Shauren
9646bdddaf
Core/Miscc: Add file/line/function information to ASSERT_NOTNULL
2025-10-28 13:43:16 +01:00
Shauren
29539aa4de
Core/CrashHandler: Fix clang warnings
2025-10-27 09:55:50 +01:00
Shauren
c3bc6f568b
Core: Fix clang build on windows
2025-09-20 22:18:32 +02:00
Shauren
8fad176f5f
Core/CrashHandler: Fix nopch build
2025-07-13 11:44:10 +02:00
Shauren
dc0c707213
Core/CrashHandler: Remove MAX_PATH limit
2025-07-06 21:58:33 +02:00
Shauren
1ae7cdd512
Core/Common: Update PCH content to include most commonly used headers
2025-06-11 16:35:31 +02:00
Shauren
b13b5142f1
Core/Utilities: Extend make_unique_ptr_with_deleter functionality to allow it to create deleters with compile time constant functions (reduces its size to just sizeof(void*))
2024-10-01 21:03:44 +02:00
Shauren
f3b8503ba6
Core/CrashHandler: Output inlined stack frames
2024-09-23 00:18:06 +02:00
Shauren
e76df583f0
Core/CrashHandler: Make WheatyExceptionReport fields not static to ensure consistent destruction order
2024-09-23 00:18:06 +02:00
Shauren
fd0a7ba871
Core/CrashHandler: Compile WheatyExceptionReport only once and moved its global variable initializer to all projects using it
2024-09-15 12:13:54 +02:00
Shauren
fd4ffc81b2
Core/Misc: Fixed windows _UNICODE incompatibilities
2024-06-02 14:21:13 +02:00
Shauren
67244a1f70
Core/Misc: Replace sprintf with safer alternatives (Trinity::StringFormat or snprintf)
2024-03-01 16:05:34 +01:00
Shauren
0743a2f7bb
Core/CrashHandler: Support dumping variables stored in cpu registers (not accurate for all variables)
2024-02-17 13:15:49 +01:00
Shauren
2441ddbea6
Core/CrashHandler: Support ARM64
2024-02-17 12:03:57 +01:00
Shauren
333630b7de
Core/Misc: Added windows version checks during startup to avoid confusion about crashes when running on unsupported OS
2023-12-01 19:53:13 +01:00
Shauren
36a6488405
Core/CrashHandler: Add a timeout to retrieving windows version from WMI
2023-11-19 21:22:09 +01:00
Shauren
f0a862e71b
Core/Misc: Modernize comparison operators
2023-08-24 00:51:26 +02:00
Ovahlord
38440996ee
Core/Common: Use the [[unlikely]] keyword in all assert, warning and error macros to allow further compiler optimization ( #29124 )
2023-07-16 16:11:41 +02:00
Shauren
d791afae1d
Core/Logging: Switch from fmt::sprintf to fmt::format (c++20 standard compatible api)
2023-01-08 21:16:53 +01:00
ihm-tswow
cec4cb0222
Core/Debugging: Improve SymInitialize fail message ( #28206 )
...
* clarify that this is not the crash error, but an error with the crash report itself
* improve formatting and message boundaries
* warn the reader that this means the call stack symbols may be inaccurate
(cherry picked from commit 6e37438e5d )
2022-09-05 22:23:02 +02:00
Shauren
3b78762ab8
Core/CrashHandler: Support retrieving windows version names for all future versions
...
(cherry picked from commit ca9b82fb85 )
2022-06-10 15:30:47 +02:00
Giacomo Pozzoni
2bc1bbd91d
Common/Misc: Replace old macros with modern C++ attributes ( #26613 )
...
(cherry picked from commit 5ae2a0f47d )
2022-03-11 11:48:31 +01:00
Kargatum
373ed8f46b
Core: whitespace cleanup, reduce double blank line to single ( #25795 )
...
* Core/Misc: fix double empty line
* worldserver.conf
(cherry picked from commit a32b6b8ac4 )
2022-03-05 20:07:57 +01:00
Shauren
0b846b2107
Build: Partial support for clang-cl
2022-02-16 20:22:15 +01:00
Shauren
439b027d48
Core/Misc: Cleanup unused includes
2022-02-13 15:07:00 +01:00
Shauren
cbcd149ce5
Core/Misc: Explicitly include required headers instead of relying on them to be included by other headers
2022-02-11 14:33:35 +01:00
jackpoz
35755ba343
Core/Misc: Fix Windows 32 bits build
...
Close #25789
(cherry picked from commit 1cafd4ef74 )
2022-01-26 18:48:08 +01:00
Shauren
fbcf269207
Core/CrashHandler: Skip logging stack trace of the thread writing the crash log, it was launched by windows with same context as crashing thread
...
(cherry picked from commit dd34651f4d )
2022-01-26 18:47:44 +01:00
Shauren
cc0affa523
Core/CrashHandler: Remove logging function variation depending on crash reason and print directly to file, not to temporary buffer
...
(cherry picked from commit c5e1b49e8c )
2022-01-26 18:47:16 +01:00
Shauren
259bbf1e04
Core/CrashHandler: NULL -> nullptr
...
(cherry picked from commit 68fdfcaa50 )
2022-01-26 18:46:56 +01:00
Shauren
473f3db0ab
Core/CrashHandler: #ifdef cleanup to make VS not choke when parsing, fixed file being all red in editor
...
(cherry picked from commit 39c5e03b74 )
2022-01-26 18:46:43 +01:00
Shauren
7893ac94a0
Core/CrashHandler: Attempt to extract C++ exception object in uncaught exception hander
...
(cherry picked from commit 83ed35fe62 )
2022-01-26 18:43:31 +01:00
Shauren
58d199db48
Core/Misc: Fix compile errors found with msvc /permissive-
...
(cherry picked from commit b3db50a3b4 )
2022-01-26 14:20:13 +01:00
jackpoz
f7c1ae01f8
Core/Common: Add macro ASSERT_WITH_SIDE_EFFECTS to be used when asserting conditions that have side effects
...
(cherry picked from commit 49da3533cd )
2022-01-19 21:18:39 +01:00
jackpoz
1fa4403b8c
Core/Common: Allow to show a message when aborting
...
Add a new ABORT_MSG macro that allows to show a formatted message before stopping the executable
(cherry picked from commit 0ddee8a4a0 )
2021-12-22 22:54:18 +01:00
jackpoz
49414acaef
Core/CrashHandler: Remove sensitive data from crashlogs
...
(cherry picked from commit 25bcb1a0b2 )
(cherry picked from commit 37478c5ac1 )
2021-12-02 00:39:28 +01:00
jackpoz
9dcbccce26
Core/Misc: Fix vsnprintf usage in ASSERT()
...
Fix vsnprintf to follow standard definition and not some old VC++ behavior, not requiring to include the '\0' character in the count parameter
(cherry picked from commit eee1f2cadf )
2021-11-16 20:37:27 +01:00
Giacomo Pozzoni
d5c41d23e6
Core/Misc: Log more information in asserts ( #22783 )
...
* Core/Misc: Log more information in asserts
Add a new function GetDebugInfos() to types that could trigger an ASSERT() to easily include more useful information in crashlogs.
This is an initial commit that requires many more commits to implement the new GetDebugInfos() function in all required types.
If the type doesn't have the function, the global default one is picked which doesn't log anything.
* Core/Misc: Fix dynamic build
Add missing attribute for dynamic build
* Core/Misc: Fix gcc/clang build
* Core/Misc: Rename GetDebugInfos() to GetDebugInfo()
* Core/Misc: Fix FormatAssertionMessage() adding an extra '\0'
* Core/Misc: Add GetDebugInfo support to Unit
* Core/Misc: Add GetDebugInfo support to Creature
* Core/Misc: Add more info to GetDebugInfo for Creature
* Core/Misc: Add GetDebugInfo support to GameObject
* Core/Misc: Add GetDebugInfo support to Player
* Core/Misc: Add more GetDebugInfo info
* Core/Misc: Add GetDebugInfo support to Item
* Core/Misc: Add GetDebugInfo support to Bag
* Core/Misc: Add GetDebugInfo support to Transport
* Core/Misc: Add GetDebugInfo support to TempSummon, Minion, Guardian, Pet
* Core/Misc: Add GetDebugInfo support to Map, InstanceMap
* Core/Misc: Add GetDebugInfo support to Spell
* Core/Misc: Fix build warning
* Core/Misc: Add GetDebugInfo support to Aura
* Core/Misc: Add GetDebugInfo support to UnitAI
(cherry picked from commit 9a924fb9d5 )
2021-11-16 20:36:58 +01:00
Warpten
1d4efe2986
Fix invalid arguments to string format in Trinity::Fatal
...
Isn't whatever is used nowadays to make this stuff safe supposed to prevent this sort of stuff?
(cherry picked from commit 9bf69b3849 )
2021-11-15 21:34:44 +01:00
Treeston
12e76f085f
Core/Misc: Add a missing include of Windows.h to Errors.cpp
...
(that last one wasn't me!)
(cherry picked from commit 1dc675f0a1 )
2021-11-12 00:16:29 +01:00
Shauren
8866065117
Core/Misc: FIx a GCC warning
2021-10-31 01:39:10 +02:00
Shauren
d181c1da75
Core/CrashHandler: Include assertion messages in crash reports
...
(cherry picked from commit 62db1fb683 )
2021-10-23 16:02:44 +02:00
jackpoz
89a232de3a
Core/Misc: Add PERFORMANCE_PROFILING CMake option
...
Add a new CMake option called PERFORMANCE_PROFILING that should be used only when profiling the performance.
This option is unsupported, do not report any issue happening when enabling this option.
(cherry picked from commit db5c9867e2 )
2021-08-08 21:21:34 +02:00
jackpoz
5b4f61d915
Core/Crash reporting: Add support to char* arrays
...
Add support to char* array showing the string value instead of the pointer address
(cherry picked from commit 4c0c4ab271 )
2021-04-16 21:03:23 +02:00
jackpoz
96406e3408
Core/Crash reporting: Fix buffer overflow
...
(cherry picked from commit c7043b25f6 )
2021-02-25 18:50:55 +01:00
Shauren
b231903932
Core/Misc: Port all the refactors sneaked in master to 3.3.5 include cleanup port
2020-09-04 13:38:24 +02:00
Shauren
1c52d5fff7
Core/Misc: Replace NULL with nullptr
2020-08-14 17:06:03 +02:00
jackpoz
bfcb276781
Core/Crash: Refactor and fixes
...
Code cleanup.
Fix buffer overflow crash.
Fix type being truncated to 199 characters.
(cherry picked from commit 9226e21205 )
2020-04-24 17:18:48 +02:00
Aokromes
b0bf1275ee
New Year
2020-01-02 06:44:10 +01:00
vincent-michael
5620eb9463
Update copyright note for 2019
...
auto happy = new year(2019);
2019-01-01 10:14:33 +01:00