Commit Graph

87 Commits

Author SHA1 Message Date
Jonathan G Rennison
743432e7f0 Try to do non-main thread crash save/screenshot in main thread 2018-08-26 22:23:11 +01:00
Jonathan G Rennison
5d61b27faa Add note to crashlog if crash is in non-main thread 2018-08-26 22:23:11 +01:00
Jonathan G Rennison
ddef3ad7c2 Add map size information to crash log 2018-07-26 19:02:08 +01:00
Jonathan G Rennison
f42cc19aad Merge branch 'cpp-11' into crashlog_improvements
# Conflicts:
#	Makefile.src.in
#	src/crashlog.cpp
#	src/crashlog.h
2018-04-27 00:33:44 +01:00
Charles Pigott
62d79900ec Add: List recent news messages in crashlog output 2018-04-13 22:08:13 +02:00
Jonathan G Rennison
2f85326a4a Increase crashlog length limits 2017-09-04 00:56:57 +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
349ddd90b7 Maintain a circular buffer of recent commands, add to crashlog.
Add console command to dump command log.
Increase max crashlog size.
2017-02-21 21:49:56 +00:00
Jonathan G Rennison
c2825c12ea Add clang version support to crashlog output. 2016-09-08 19:40:15 +01:00
Jonathan G Rennison
f7774415f2 Merge branch 'cpp-11' into crashlog_improvements
# Conflicts:
#	src/stdafx.h
2016-09-08 19:36:00 +01:00
alberth
0adfb1ac6f (svn r27653) -Fix(r27647): Rename FileOperation enum and values to SaveLoadOperation to avoid nameclash with windows compiler toolkit. 2016-09-04 16:06:50 +00:00
alberth
f286ba8db2 (svn r27653) -Fix(r27647): Rename FileOperation enum and values to SaveLoadOperation to avoid nameclash with windows compiler toolkit. 2016-09-04 16:06:50 +00:00
alberth
597380e099 (svn r27650) -Codechange: Replace SaveOrLoadMode by FileOperation and DetailedFileType. 2016-09-04 12:57:43 +00:00
alberth
a959c0c965 (svn r27650) -Codechange: Replace SaveOrLoadMode by FileOperation and DetailedFileType. 2016-09-04 12:57:43 +00: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
0951cb320c Show ./configure invocation in crash log. 2016-06-10 23:39:26 +01:00
frosch
1b84d893e0 (svn r27573) -Fix [FS#6467]: Compilation failure with gcc 6.1 due to headers included after safeguards.h (JGR) 2016-05-22 10:15:35 +00:00
frosch
6fafa3d93a (svn r27573) -Fix [FS#6467]: Compilation failure with gcc 6.1 due to headers included after safeguards.h (JGR) 2016-05-22 10:15:35 +00:00
Jonathan G Rennison
6ed6eeb478 Include _current_company in crashlog AI config. 2016-03-21 20:21:32 +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
5cf2b04f6a Initial implementation of scope guard logging for including in crash logs.
This adds a mechanism to create scope guards with an associated std::function
which is called to output diagnostic info in the event of a crash.
Add a macro to make it easy to efficiently capture variables on the stack
and output a formatted message.
Requires C++11, #ifdefed out for legacy compilers.
2016-02-17 22:41:07 +00: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
rubidium
69fac508c3 (svn r27367) -Codechange: make a distinction between the layouting part of ICU (lx) or the sorting/collation part of ICU (i18n) 2015-08-09 12:33:27 +00:00
rubidium
ee700fd3b1 (svn r27367) -Codechange: make a distinction between the layouting part of ICU (lx) or the sorting/collation part of ICU (i18n) 2015-08-09 12:33:27 +00:00
rubidium
b476086c39 (svn r26538) -Codechange: remove double accounting of the drivers 2014-04-28 21:06:51 +00:00
rubidium
beb540ec55 (svn r26538) -Codechange: remove double accounting of the drivers 2014-04-28 21:06:51 +00: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
rubidium
2618d960e3 (svn r26209) -Codechange: remove some template magic and simplify some code 2014-01-02 22:41:58 +00:00
rubidium
4a911754b5 (svn r26209) -Codechange: remove some template magic and simplify some code 2014-01-02 22:41:58 +00:00
rubidium
00c05e79b1 (svn r26170) -Feature-ish: add the currently used fonts to the crash log 2013-12-22 17:46:27 +00:00
rubidium
8860bb5c8d (svn r26170) -Feature-ish: add the currently used fonts to the crash log 2013-12-22 17:46:27 +00:00
frosch
edd9c0553a (svn r24804) -Add: Separate subdirectory for screenshots. 2012-12-09 16:52:43 +00:00
frosch
50abcf3edc (svn r24804) -Add: Separate subdirectory for screenshots. 2012-12-09 16:52:43 +00:00
rubidium
d175528220 (svn r23660) -Feature-ish: add the game script to the crash log 2011-12-22 20:05:52 +00:00
rubidium
c9b6391ab0 (svn r23660) -Feature-ish: add the game script to the crash log 2011-12-22 20:05:52 +00:00
truebrain
cc12942d70 (svn r23384) -Remove: no longer allow a binary to be without AI support; the parts some compilers failed at, are integrated in other parts of the code now too 2011-12-01 12:03:34 +00:00
truebrain
bf803e40cc (svn r23384) -Remove: no longer allow a binary to be without AI support; the parts some compilers failed at, are integrated in other parts of the code now too 2011-12-01 12:03:34 +00:00
rubidium
6c9078fd30 (svn r21844) -Codechange: move documentation towards the code to make it more likely to be updates [a-c]. 2011-01-18 22:17:15 +00:00
rubidium
f0ad5fd749 (svn r21844) -Codechange: move documentation towards the code to make it more likely to be updates [a-c]. 2011-01-18 22:17:15 +00:00
rubidium
f4e4056aed (svn r21161) -Codechange: make the currently used language easier accessible 2010-11-13 11:25:58 +00:00
rubidium
7c754ca125 (svn r21161) -Codechange: make the currently used language easier accessible 2010-11-13 11:25:58 +00:00
rubidium
59519edd34 (svn r21044) -Feature: XZ/LZMA2 savegame support. New default reduces savegame size by 10 to 30% with slightly more CPU usage. With maximum settings it reduces savegame size by 20 to 30%, but that takes 7 to 14 times longer. Map saving + downloading takes, on average, 5% less. 2010-10-27 16:42:20 +00:00
rubidium
a9fc9b2e9a (svn r21044) -Feature: XZ/LZMA2 savegame support. New default reduces savegame size by 10 to 30% with slightly more CPU usage. With maximum settings it reduces savegame size by 20 to 30%, but that takes 7 to 14 times longer. Map saving + downloading takes, on average, 5% less. 2010-10-27 16:42:20 +00:00
rubidium
91f31b59e8 (svn r20439) -Fix [FS#4023]: MinGW compiler complaining about converting -1 to an unsigned int 2010-08-10 16:15:42 +00:00
rubidium
8ac6b5d351 (svn r20439) -Fix [FS#4023]: MinGW compiler complaining about converting -1 to an unsigned int 2010-08-10 16:15:42 +00:00
rubidium
0dde0a7585 (svn r20138) -Change: also put the base set version number in the crash log 2010-07-14 09:06:41 +00:00
rubidium
a690872333 (svn r20138) -Change: also put the base set version number in the crash log 2010-07-14 09:06:41 +00:00
rubidium
21bd2722cd (svn r19081) -Codechange: make it possible to disable compilation of the AI+Squirrel 2010-02-10 16:24:05 +00:00