37 virtual char *
LogOSVersion(
char *buffer,
const char *last)
const = 0;
45 virtual char *
LogCompiler(
char *buffer,
const char *last)
const;
54 virtual char *
LogError(
char *buffer,
const char *last,
const char *message)
const = 0;
63 virtual char *
LogStacktrace(
char *buffer,
const char *last)
const = 0;
72 virtual char *
LogRegisters(
char *buffer,
const char *last)
const;
81 virtual char *
LogModules(
char *buffer,
const char *last)
const;
86 char *
LogLibraries(
char *buffer,
const char *last)
const;
87 char *
LogGamelog(
char *buffer,
const char *last)
const;
93 char *
FillCrashLog(
char *buffer,
const char *last)
const;
94 bool WriteCrashLog(
const char *buffer,
char *filename,
const char *filename_last)
const;
105 virtual int WriteCrashDump(
char *filename,
const char *filename_last)
const;
106 bool WriteSavegame(
char *filename,
const char *filename_last)
const;
Helper class for creating crash logs.
bool WriteCrashLog(const char *buffer, char *filename, const char *filename_last) const
Write the crash log to a file.
static const char * gamelog_last
Temporary 'local' location of the end of the buffer.
virtual char * LogError(char *buffer, const char *last, const char *message) const =0
Writes actually encountered error to the buffer.
static void InitialiseCrashLog()
Initialiser for crash logs; do the appropriate things so crashes are handled by our crash handler ins...
virtual int WriteCrashDump(char *filename, const char *filename_last) const
Write the (crash) dump to a file.
char * LogGamelog(char *buffer, const char *last) const
Writes the gamelog data to the buffer.
char * LogOpenTTDVersion(char *buffer, const char *last) const
Writes OpenTTD's version to the buffer.
static const char * message
Pointer to the error message.
static void AfterCrashLogCleanup()
Try to close the sound/video stuff so it doesn't keep lingering around incorrect video states or so...
bool MakeCrashLog() const
Makes the crash log, writes it to a file and then subsequently tries to make a crash dump and crash s...
static char * gamelog_buffer
Temporary 'local' location of the buffer.
bool WriteScreenshot(char *filename, const char *filename_last) const
Write the (crash) screenshot to a file.
virtual char * LogCompiler(char *buffer, const char *last) const
Writes compiler (and its version, if available) to the buffer.
bool WriteSavegame(char *filename, const char *filename_last) const
Write the (crash) savegame to a file.
virtual ~CrashLog()
Stub destructor to silence some compilers.
virtual char * LogStacktrace(char *buffer, const char *last) const =0
Writes the stack trace to the buffer, if there is information about it available. ...
virtual char * LogOSVersion(char *buffer, const char *last) const =0
Writes OS' version to the buffer.
char * LogLibraries(char *buffer, const char *last) const
Writes information (versions) of the used libraries.
char * LogConfiguration(char *buffer, const char *last) const
Writes the (important) configuration settings to the buffer.
virtual char * LogRegisters(char *buffer, const char *last) const
Writes information about the data in the registers, if there is information about it available...
static void GamelogFillCrashLog(const char *s)
Helper function for printing the gamelog.
char * FillCrashLog(char *buffer, const char *last) const
Fill the crash log buffer with all data of a crash log.
virtual char * LogModules(char *buffer, const char *last) const
Writes the dynamically linked libraries/modules to the buffer, if there is information about it avail...
static void SetErrorMessage(const char *message)
Sets a message for the error message handler.