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
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
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
Jonathan G Rennison
8d078acb4e
Log registers and fault instruction in Unix crashlog.
2016-06-12 19:34:06 +01:00
Jonathan G Rennison
abbc960e96
Linux crashlog: Use sigaction to get more info on fatal signals.
2016-06-10 23:39:26 +01:00
Jonathan G Rennison
c949ab72e4
Close read end of pipe after reading in gdb stack trace mode.
2016-03-10 19:40:20 +00:00
Jonathan G Rennison
a609439d98
Add support for enhanced crash log stacktraces using gdb on Linux.
...
This attempts to use gdb to attach to the current process and print
a full backtrace.
2016-03-10 00:14:26 +00:00
Jonathan G Rennison
cbc35e8aae
Try to make scope info logging more robust.
...
Add checks for validity of Vehicle ptrs in scope_dumper::VehicleInfo.
In Unix mode, try to handle SIGSEGVs when dumping scope info.
2016-02-25 19:21:06 +00:00
Jonathan G Rennison
eaf9aa6571
Unix crash log: handle SIGSEGVs while backtracing. Add documentation.
2015-09-09 18:28:03 +01:00
Jonathan G Rennison
3a093c4b63
Use libbfd as a fallback for backtrace symbol lookup on MinGW.
...
This will try to demangle.
If bfd_find_nearest_line returns a file name but nothing else
(debugging info is turned off), scan the symbol table for the previous
symbol and use it if it looks OKish.
2015-09-09 02:14:06 +01:00
Jonathan G Rennison
5b755050b8
Use libbfd on Unix to get more symbols, line numbers, etc. for backtraces.
2015-09-09 00:08:21 +01:00
Jonathan G Rennison
387bf403da
GCC/Unix: Try to demangle C++ function names in crashlog stack trace.
...
Change format of stack trace lines to improve readability.
2015-09-08 00:49:34 +01:00
rubidium
0463dbdc9e
(svn r26482) -Codechange: add an include that allows us to undefine/redefine "unsafe" functions to prevent them from being used, and thus having to care about certain aspects of their return values
2014-04-23 20:13:33 +00:00
rubidium
2be4215f43
(svn r26482) -Codechange: add an include that allows us to undefine/redefine "unsafe" functions to prevent them from being used, and thus having to care about certain aspects of their return values
2014-04-23 20:13:33 +00:00
alberth
a825b4fa5f
(svn r20266) -Doc: Mostly typo fixes, a few doxygen-related improvements.
2010-07-31 21:02:56 +00:00
alberth
1743c86610
(svn r20266) -Doc: Mostly typo fixes, a few doxygen-related improvements.
2010-07-31 21:02:56 +00:00
rubidium
2de9e2d16b
(svn r19853) -Fix [FS#3840]: revert r19781 and apply a more sensible version with the same effect
2010-05-18 21:17:25 +00:00
rubidium
0a34d95374
(svn r19853) -Fix [FS#3840]: revert r19781 and apply a more sensible version with the same effect
2010-05-18 21:17:25 +00:00