# crashlog_win.cpp File Reference

Implementation of a crashlogger for Windows. More...

`#include "../../stdafx.h"`
`#include "../../crashlog.h"`
`#include "win32.h"`
`#include "../../core/alloc_func.hpp"`
`#include "../../core/math_func.hpp"`
`#include "../../string_func.h"`
`#include "../../fileio_func.h"`
`#include "../../strings_func.h"`
`#include "../../gamelog.h"`
`#include "../../saveload/saveload.h"`
`#include <windows.h>`
`#include <signal.h>`

Go to the source code of this file.

## Data Structures
class | CrashLogWindows
| Windows implementation for the crash logger. More...
struct | DebugFileInfo
## Functions
static void | MakeCRCTable (uint32 *table)
static uint32 | CalcCRC (byte *data, uint size, uint32 crc)
static void | GetFileInfo (DebugFileInfo *dfi, const TCHAR *filename)
static char * | PrintModuleInfo (char *output, const char *last, HMODULE mod)
bool | CloseConsoleLogIfActive ()
static void | ShowCrashlogWindow ()
static LONG WINAPI | ExceptionHandler (EXCEPTION_POINTERS *ep)
static void CDECL | CustomAbort (int signal)
static void | SetWndSize (HWND wnd, int mode)
static INT_PTR CALLBACK | CrashDialogFunc (HWND wnd, UINT msg, WPARAM wParam, LPARAM lParam)
## Variables
static uint32 * | _crc_table
void * | _safe_esp = NULL
| Stack pointer for use when 'starting' the crash handler.
static bool | _expanded
static const TCHAR | _crash_desc []
static const TCHAR | _save_succeeded []
static const TCHAR *const | _expand_texts [] = {_T("S&how report >>"), _T("&Hide report <<") }

## Detailed Description

Implementation of a crashlogger for Windows.

Definition in file crashlog_win.cpp.

## Variable Documentation

const TCHAR _crash_desc[]`[static]`

Initial value:

      _T("Please send the crash information and the crash.dmp file (if any) to the developers.\n")

      _T("Press \"Emergency save\" to attempt saving the game. Generated file(s):\n")
      _T("%s")

Definition at line 446 of file crashlog_win.cpp.

void* _safe_esp = NULL

Stack pointer for use when 'starting' the crash handler.

Not static as gcc's inline assembly needs it that way.

Definition at line 359 of file crashlog_win.cpp.

const TCHAR _save_succeeded[]`[static]`

Initial value:

      _T("corrupted. The saved game is not guaranteed to work.")

Definition at line 454 of file crashlog_win.cpp.