Jonathan G Rennison
fc1c47cbd2
Merge branch 'master' into jgrpp
...
# Conflicts:
# cmake/CompileFlags.cmake
# src/crashlog.cpp
# src/crashlog.h
# src/date_type.h
# src/depot_type.h
# src/landscape.cpp
# src/openttd.cpp
# src/order_cmd.cpp
# src/order_gui.cpp
# src/os/macosx/crashlog_osx.cpp
# src/os/unix/crashlog_unix.cpp
# src/os/windows/crashlog_win.cpp
# src/pathfinder/npf/npf.cpp
# src/road_cmd.cpp
# src/script/api/script_infrastructure.cpp
# src/stdafx.h
# src/table/settings/gui_settings.ini
# src/table/settings/pathfinding_settings.ini
# src/tests/CMakeLists.txt
2023-11-13 19:08:22 +00:00
Patric Stout
b00e483b0f
Change: recover when possible from crashes during a crash ( #11238 )
2023-08-27 21:54:05 +02:00
Patric Stout
f120d2beb8
Add: use breakpad to create crash.dmp on MacOS / Linux too ( #11202 )
...
Normally only the Windows platform could create a crash.dmp, making
analysing crash-reports from MacOS / Linux rather tricky.
2023-08-20 17:16:08 +02:00
Patric Stout
cd10ddf9ae
Remove: last remnants of SunOS ( #11210 )
...
We have no evidence SunOS has been tried in the last few years,
and the code is awkward enough to just remove.
2023-08-19 00:52:58 +02:00
Jonathan G Rennison
79509b76a6
Crashlog: Unix: Decode REG_ERR for SIGSEGV
2023-08-14 15:58:00 +01:00
Jonathan G Rennison
cb0c8d5e38
Crashlog: Unix: Decode common si_code values for SIGSEGV
2023-08-14 11:24:05 +01:00
Jonathan G Rennison
e676eb1202
Crashlog: Unix: Include REG_ERR in x86 register dump
2023-08-14 11:24:05 +01:00
Jonathan G Rennison
1ec2ed937f
Unix: Fix CMake detection and setup of sigaltstack
2023-08-14 00:20:04 +01:00
Jonathan G Rennison
551d581215
Unix crash log: Fix stack trace formatting when using addr2line
2023-06-18 20:17:38 +01:00
Jonathan G Rennison
76304c1f76
Crash log: Checkpoint each line of decoded stack trace
2023-06-12 19:03:37 +01:00
Jonathan G Rennison
da07c8ce51
Crash log: Move GDB/LLDB logging to its own section
2023-06-12 18:38:27 +01:00
Jonathan G Rennison
dd57fc6ecf
Unix crash log: Generalise crash log fault handling to all sections
2023-06-12 18:34:37 +01:00
Jonathan G Rennison
ac2f9a21e8
Move upstream saveload to src/saveload/, move jgrpp saveload to src/sl/
...
Leave afterload in src/saveload/
2023-06-08 00:01:40 +01:00
PeterN
d086f288cd
Codechange: Remove duplicated includes. ( #10888 )
...
These are now included by stdafx.h so don't need to be included again.
2023-05-29 14:29:00 +01:00
Rubidium
19304bd3d5
Codechange: replace seprintf with fmt::format for filling the crash log data
2023-05-25 05:42:10 +02:00
Rubidium
c518293135
Codechange: replace printf with fmt::print
2023-05-21 15:12:02 +02:00
Peter Nelson
00bf42353a
Codechange: Place gamelog into its own class, along with internal data.
...
Data is now stored in vectors to avoid manual memory management and
passing lengths around.
2023-05-02 19:47:55 +01:00
Jonathan G Rennison
cfb0d366f3
Unix: Trigger crash log handler on receiving SIGQUIT
2023-04-02 01:07:54 +01:00
Jonathan G Rennison
97acdfaa05
Crashlog: Unix: Use dladdr1 for symbol offset for addr2line
...
Subtract 1 from offset given to addr2line
2023-02-20 23:42:55 +00:00
Rubidium
d51d08ddcb
Codechange: put stack variables in global variables for gamelog/crashlog
2023-01-28 17:23:30 +01:00
Jonathan G Rennison
5cc56a6145
Crashlog: Limit iterations of calls to bfd_find_inliner_info
2022-10-08 19:56:16 +01:00
Jonathan G Rennison
e64427d034
Crashlog: Unix: Add BFD inline info support
2022-09-04 22:01:23 +01:00
Jonathan G Rennison
3d39e439f6
Unix: Use _exit instead of exit on execvp failure in crashlog
2022-09-04 20:58:28 +01:00
Jonathan G Rennison
0811990d4a
Unix: Try using addr2line for crash log backtrace symbol resolution
2022-09-04 19:41:05 +01:00
Jonathan G Rennison
1518e4621b
Fix unused function warning in crash logger on Emscripten
2022-06-05 16:10:15 +01:00
Jonathan G Rennison
220390ed3e
Crashlog: Support gdb read when /dev/null is missing
2022-05-31 22:58:16 +01:00
Jonathan G Rennison
d83f0d0cda
Crashlog: Use a temp file instead of a pipe to read from gdb/lldb
2022-05-31 22:01:52 +01:00
Jonathan G Rennison
4a0fa0cc75
Crashlog: Do not try to read from other executables if /dev/null is missing
2022-05-31 21:38:02 +01:00
Jonathan G Rennison
4543803823
Crash log: Increase crash log length limit on Unix
...
Allocate buffer using mmap if possible
2021-12-06 18:58:19 +00:00
Jonathan G Rennison
24fdc8331b
Add CheckCaches mode to emit a log/save/screenshot on detected issue
2021-10-03 23:57:27 +01:00
Jonathan G Rennison
5e14b54a0c
Merge branch 'master' into jgrpp
2021-04-05 17:51:45 +01:00
Michael Lutz
13011e00c6
Fix #8860 : [Win32] Crashlog window wasn't reliably shown for crashes not on the main thread.
2021-03-13 22:09:05 +01:00
Jonathan G Rennison
610f8b9eca
Crashlog: Unix: Fix getting symbols using BFD
2020-06-30 23:53:51 +01:00
Jonathan G Rennison
cbdd9f84d8
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/console_gui.cpp
# src/lang/korean.txt
# src/video/sdl2_v.cpp
# src/video/sdl2_v.h
# src/window.cpp
# src/window_gui.h
2019-11-12 18:43:10 +00:00
S. D. Cloudt
13cc8a0cee
Cleanup: Removed SVN headers
2019-11-10 17:59:20 +00:00
Jonathan G Rennison
6c21c93192
Add command line switch -Z to write detailed version information
2019-10-08 00:05:44 +01:00
Jonathan G Rennison
459a49cb24
Add flags for mismatch type to client desync log
2019-08-20 22:52:03 +01:00
Jonathan G Rennison
97baff6fd8
Add client desync log to server desync log output
2019-05-23 22:53:17 +01:00
Jonathan G Rennison
fa55a1c002
Output a log, savegame and screenshot on desync events
2019-05-18 10:17:59 +01:00
Jonathan G Rennison
24458e9990
Add various missing override specifiers
2019-04-28 12:24:40 +01:00
Jonathan G Rennison
85c8f4baca
Merge branch 'crashlog_improvements' into jgrpp
...
# Conflicts:
# src/os/macosx/crashlog_osx.cpp
2019-04-23 19:51:09 +01:00
Jonathan G Rennison
145fee04fa
Add sigaltstack support to Unix crashlog
2019-04-23 18:41:20 +01:00
Jonathan G Rennison
674732cd68
Merge: Codechange: Use null pointer literal instead of the NULL macro
2019-04-11 18:14:13 +01:00
Henry Wilson
7c8e7c6b6e
Codechange: Use null pointer literal instead of the NULL macro
2019-04-10 23:22:20 +02:00
Jonathan G Rennison
d5ee9d34da
Merge branch 'cpp-11' into crashlog_improvements
...
# Conflicts:
# Makefile.src.in
# projects/determineversion.vbs
# source.list
# src/crashlog.cpp
# src/misc.cpp
# src/os/unix/crashlog_unix.cpp
# src/os/windows/crashlog_win.cpp
# src/rev.h
# src/thread/thread.h
# src/thread/thread_morphos.cpp
# src/thread/thread_none.cpp
# src/thread/thread_os2.cpp
# src/thread/thread_pthread.cpp
# src/thread/thread_win32.cpp
2019-04-09 19:21:39 +01:00
Jonathan G Rennison
ba34ec7ade
Merge branch 'master' into jgrpp
...
Replace build and refit, and group collapse implementations
Fix template creation build and refit
# Conflicts:
# Makefile.bundle.in
# config.lib
# src/animated_tile.cpp
# src/blitter/32bpp_anim.hpp
# src/blitter/32bpp_base.hpp
# src/blitter/8bpp_base.hpp
# src/blitter/null.hpp
# src/build_vehicle_gui.cpp
# src/command.cpp
# src/command_func.h
# src/console_gui.cpp
# src/core/smallstack_type.hpp
# src/date.cpp
# src/debug.cpp
# src/genworld_gui.cpp
# src/ground_vehicle.hpp
# src/group_gui.cpp
# src/lang/korean.txt
# src/linkgraph/linkgraph_gui.h
# src/main_gui.cpp
# src/misc_gui.cpp
# src/network/core/game.h
# src/network/core/packet.cpp
# src/network/core/udp.cpp
# src/network/core/udp.h
# src/network/network_content.cpp
# src/network/network_type.h
# src/network/network_udp.cpp
# src/newgrf_house.h
# src/openttd.cpp
# src/order_cmd.cpp
# src/order_gui.cpp
# src/os/unix/crashlog_unix.cpp
# src/os/windows/crashlog_win.cpp
# src/osk_gui.cpp
# src/pathfinder/opf/opf_ship.cpp
# src/rail_cmd.cpp
# src/rail_gui.cpp
# src/saveload/saveload.cpp
# src/settings.cpp
# src/settings_gui.cpp
# src/smallmap_gui.h
# src/station_base.h
# src/station_cmd.cpp
# src/table/gameopt_settings.ini
# src/table/newgrf_debug_data.h
# src/table/settings.ini
# src/timetable_gui.cpp
# src/toolbar_gui.cpp
# src/train_gui.cpp
# src/vehicle.cpp
# src/vehicle_gui.cpp
# src/vehiclelist.cpp
# src/viewport.cpp
# src/widgets/dropdown.cpp
# src/window_gui.h
2019-03-27 18:12:04 +00:00
Henry Wilson
af7d9020a1
Codechange: Use override specifer for overriding member declarations
...
This is a C++11 feature that allows the compiler to check that a virtual
member declaration overrides a base-class member with the same signature.
Also src/blitter/32bpp_anim_sse4.hpp +38 is no longer erroneously marked
as virtual despite being a template.
2019-03-24 16:10:04 +01:00
Jonathan G Rennison
fd9a2e680c
Fix using crash abort reason string as printf format string
2017-08-12 00:57:54 +01:00
Jonathan G Rennison
3271d69bda
Enable crashlogs for emergency or missing NewGRF savegames, in dev mode.
...
Factor out common checks for emergency and missing NewGRFs.
2017-06-22 19:30:37 +01:00
Jonathan G Rennison
62631cba02
Attempt to log distro name/version in Unix crashlog.
...
Factor out fork/execve/read stdout code into own function.
2016-06-12 20:58:52 +01:00