git fetch show progress
[TortoiseGit.git] / src / TortoiseProc / Commands / CrashCommand.h
blob48be1281dd5257ec8ddd52282a91343404591711
1 // TortoiseGit - a Windows shell extension for easy version control
3 // Copyright (C) 2007-2008 - TortoiseSVN
5 // This program is free software; you can redistribute it and/or
6 // modify it under the terms of the GNU General Public License
7 // as published by the Free Software Foundation; either version 2
8 // of the License, or (at your option) any later version.
10 // This program is distributed in the hope that it will be useful,
11 // but WITHOUT ANY WARRANTY; without even the implied warranty of
12 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 // GNU General Public License for more details.
15 // You should have received a copy of the GNU General Public License
16 // along with this program; if not, write to the Free Software Foundation,
17 // 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
19 #pragma once
20 #include "Command.h"
22 #include "MessageBox.h"
23 #include "CrashReport.h"
25 extern CCrashReport crasher;
26 /**
27 * \ingroup TortoiseProc
28 * crashes the application to test the crash handler.
30 class CrashCommand : public Command
32 public:
33 /**
34 * Executes the command.
36 virtual bool Execute()
38 crasher.Enable(!parser.HasKey(_T("nocustom")));
39 CMessageBox::Show(NULL, _T("You are testing the crashhandler.\n<ct=0x0000FF>Do NOT send the crashreport!!!!</ct>"), _T("TortoiseGit"), MB_ICONINFORMATION);
40 CrashProgram();
41 CMessageBox::Show(NULL, IDS_ERR_NOCOMMAND, IDS_APPNAME, MB_ICONERROR);
42 return true;
45 void CrashProgram()
47 // this function is to test the crash reporting utility
48 int * a;
49 a = NULL;
50 *a = 7;