Commit Graph

40 Commits

Author SHA1 Message Date
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
smatz
9fc910fbc2 (svn r18855) -Codechange: record compiler name and version in the crash log 2010-01-18 10:11:27 +00:00
smatz
91ace4d50f (svn r18855) -Codechange: record compiler name and version in the crash log 2010-01-18 10:11:27 +00:00
rubidium
251ffaa000 (svn r18831) -Change [FS#3537]: do not go into the crashlog handler in case loading a savegame misses with missing NewGRFs. This way the load game crash handler gets better visibility and the user is instructed to find the missing NewGRFs before filing a bug report 2010-01-16 19:08:33 +00:00
rubidium
fd060c7276 (svn r18831) -Change [FS#3537]: do not go into the crashlog handler in case loading a savegame misses with missing NewGRFs. This way the load game crash handler gets better visibility and the user is instructed to find the missing NewGRFs before filing a bug report 2010-01-16 19:08:33 +00:00
smatz
9ecfcdff78 (svn r18350) -Codechange: catch SIGILL under unix-like systems as well 2009-11-29 22:18:04 +00:00
smatz
6c22463dd9 (svn r18350) -Codechange: catch SIGILL under unix-like systems as well 2009-11-29 22:18:04 +00:00
rubidium
860b9b1cea (svn r18028) -Codechange: unglobalise some functions 2009-11-09 10:40:33 +00:00
rubidium
224f4e0197 (svn r18028) -Codechange: unglobalise some functions 2009-11-09 10:40:33 +00:00
frosch
fe7032a7a6 (svn r17463) -Change (r17453): Retrigger the abort signal after writing the crashlog, so the next one can catch it again (e.g. to write a core dump). 2009-09-07 20:30:45 +00:00
frosch
bb5a31faab (svn r17463) -Change (r17453): Retrigger the abort signal after writing the crashlog, so the next one can catch it again (e.g. to write a core dump). 2009-09-07 20:30:45 +00:00
rubidium
d916400521 (svn r17453) -Add: crash logger for all Unixy OSes; should work for all, but I don't have all exotic machines so it might break compilation on the more exotic configurations 2009-09-07 12:14:45 +00:00
rubidium
a595d3f8c3 (svn r17453) -Add: crash logger for all Unixy OSes; should work for all, but I don't have all exotic machines so it might break compilation on the more exotic configurations 2009-09-07 12:14:45 +00:00