[GME-commit] GMESRC/GME/Gme EmergencySaveDlg.cpp, NONE, 1.1 EmergencySaveDlg.h, NONE, 1.1 ExceptionHandler.cpp, 1.1, 1.2 GME.rc, 1.168, 1.169 GME.vcproj, 1.8, 1.9 GMEApp.cpp, 1.151, 1.152 GMEApp.h, 1.41, 1.42 GMEView.cpp, 1.199, 1.200 GMEView.h, 1.82, 1.83 MainFrm.cpp, 1.42, 1.43 MainFrm.h, 1.32, 1.33 resource.h, 1.79, 1.80
Log messages of CVS commits
gme-commit at list.isis.vanderbilt.edu
Thu Apr 10 18:02:10 CDT 2008
- Previous message: [GME-commit] GMESRC/GME/Search SearchDlg.cpp,1.21,1.22
- Next message: [GME-commit] GMESRC/GME/Gme ExceptionHandler.cpp, 1.2, 1.3 ExceptionHandler.h, 1.1, 1.2 GMEApp.cpp, 1.152, 1.153 GMEView.cpp, 1.200, 1.201 GMEView.h, 1.83, 1.84 StdAfx.h, 1.12, 1.13
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
Update of /project/gme-repository/GMESRC/GME/Gme
In directory escher:/tmp/cvs-serv14788/Gme
Modified Files:
ExceptionHandler.cpp GME.rc GME.vcproj GMEApp.cpp GMEApp.h
GMEView.cpp GMEView.h MainFrm.cpp MainFrm.h resource.h
Added Files:
EmergencySaveDlg.cpp EmergencySaveDlg.h
Log Message:
Further developments of the Emergency save: dialog
CVS User: (csaba)
--- NEW FILE: EmergencySaveDlg.cpp ---
// EmergencySaveDlg.cpp : implementation file
//
#include "stdafx.h"
#include "EmergencySaveDlg.h"
/////////////////////////////////////////////////////////////////////////////
// EmergencySaveDlg dialog
IMPLEMENT_DYNAMIC(EmergencySaveDlg, CDialog)
EmergencySaveDlg::EmergencySaveDlg(CWnd* pParent):
CDialog(EmergencySaveDlg::IDD, pParent)
{
//{{AFX_DATA_INIT(EmergencySaveDlg)
m_minidumpChecked = FALSE;
//}}AFX_DATA_INIT
}
EmergencySaveDlg::~EmergencySaveDlg()
{
}
void EmergencySaveDlg::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(EmergencySaveDlg)
DDX_Control(pDX, IDOK, m_buttonOK);
DDX_Control(pDX, IDC_MINIDUMP_CHECK, m_checkboxMinidump);
DDX_Control(pDX, IDC_EMERGENCY_INFO_STATIC, m_staticEmergencySaveInfo);
DDX_Control(pDX, IDC_MINIDUMP_INFO_STATIC, m_staticMinidumpSaveInfo);
DDX_Check(pDX, IDC_MINIDUMP_CHECK, m_minidumpChecked);
DDX_Text(pDX, IDC_EMERGENCY_INFO_STATIC, m_strEmergencySaveInfo);
DDX_Text(pDX, IDC_MINIDUMP_INFO_STATIC, m_strMinidumpSaveInfo);
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(EmergencySaveDlg, CDialog)
//{{AFX_MSG_MAP(CDialogList)
ON_BN_CLICKED(IDC_MINIDUMP_CHECK, OnMinidumpCheckboxClicked)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
// EmergencySaveDlg message handlers
BOOL EmergencySaveDlg::OnInitDialog()
{
CDialog::OnInitDialog();
m_checkboxMinidump.SetCheck((m_minidumpChecked == FALSE) ? 0 : 1);
m_staticEmergencySaveInfo.SetWindowText(m_strEmergencySaveInfo);
m_staticMinidumpSaveInfo.SetWindowText(m_strMinidumpSaveInfo);
return TRUE;
}
void EmergencySaveDlg::OnMinidumpCheckboxClicked()
{
m_minidumpChecked = (m_checkboxMinidump.GetCheck() == 0 ? FALSE : TRUE);
}
void EmergencySaveDlg::SetStrings(CString emergencySaveInfo, CString minidumpSaveInfo)
{
m_strEmergencySaveInfo = emergencySaveInfo;
m_strMinidumpSaveInfo = minidumpSaveInfo;
}
BOOL EmergencySaveDlg::ShouldWriteMiniDump(void)
{
return m_minidumpChecked;
}
Index: GMEApp.h
===================================================================
RCS file: /project/gme-repository/GMESRC/GME/Gme/GMEApp.h,v
retrieving revision 1.41
retrieving revision 1.42
diff -C2 -d -r1.41 -r1.42
*** GMEApp.h 8 Apr 2008 21:30:45 -0000 1.41
--- GMEApp.h 10 Apr 2008 23:02:08 -0000 1.42
***************
*** 40,43 ****
--- 40,44 ----
{
friend class CGMEOLEApp;
+ friend class ExceptionHandler;
public:
virtual BOOL PreTranslateMessage(MSG* pMsg);
***************
*** 68,76 ****
inline bool isMgaProj() const { return proj_type_is_mga; }
inline CString connString() const { return currentConnection; }
private:
-
virtual int Run();
static void EmergencyTerminate();
! bool EmergencySave();
bool proj_type_is_mga;
bool proj_type_is_xmlbackend;
--- 69,83 ----
inline bool isMgaProj() const { return proj_type_is_mga; }
inline CString connString() const { return currentConnection; }
+
private:
virtual int Run();
static void EmergencyTerminate();
! enum EmergencySaveMode {
! SaveAndBringUpMessageBox = 1,
! BringUpDialogOnly = 2,
! DoTheSaveOnly = 3
! };
! BOOL EmergencySave(EmergencySaveMode saveMode);
! CString emergencyBackupName;
bool proj_type_is_mga;
bool proj_type_is_xmlbackend;
Index: GMEView.h
===================================================================
RCS file: /project/gme-repository/GMESRC/GME/Gme/GMEView.h,v
retrieving revision 1.82
retrieving revision 1.83
diff -C2 -d -r1.82 -r1.83
*** GMEView.h 27 Mar 2008 21:43:08 -0000 1.82
--- GMEView.h 10 Apr 2008 23:02:08 -0000 1.83
***************
*** 479,482 ****
--- 479,493 ----
afx_msg void OnUpdateJumpAlongConnection( CCmdUI* pCmdUI );
afx_msg void OnUpdateBackAlongConnection( CCmdUI* pCmdUI );
+ afx_msg void OnCrashTestIllegalWrite();
+ afx_msg void OnCrashTestIllegalRead();
+ afx_msg void OnCrashTestIllegalReadInCRuntime();
+ afx_msg void OnCrashTestIllegalCodeRead();
+ afx_msg void OnCrashTestDivideByZero();
+ afx_msg void OnUpdateCrashTestMenu(CCmdUI* pCmdUI);
+ afx_msg void OnUpdateCrashTestIllegalWrite(CCmdUI* pCmdUI);
+ afx_msg void OnUpdateCrashTestIllegalRead(CCmdUI* pCmdUI);
+ afx_msg void OnUpdateCrashTestIllegalReadInCRuntime(CCmdUI* pCmdUI);
+ afx_msg void OnUpdateCrashTestIllegalCodeRead(CCmdUI* pCmdUI);
+ afx_msg void OnUpdateCrashTestDivideByZero(CCmdUI* pCmdUI);
afx_msg void OnShowSelectedModel();
afx_msg void OnFocusBrowser();
Index: MainFrm.cpp
===================================================================
RCS file: /project/gme-repository/GMESRC/GME/Gme/MainFrm.cpp,v
retrieving revision 1.42
retrieving revision 1.43
diff -C2 -d -r1.42 -r1.43
*** MainFrm.cpp 8 Apr 2008 21:30:45 -0000 1.42
--- MainFrm.cpp 10 Apr 2008 23:02:08 -0000 1.43
***************
*** 11,16 ****
#include "GMEEventLogger.h"
#include "..\XmlBackEnd\svauto.h"
- #include ".\mainfrm.h"
- #include "CrashTest.h"
#include <sys/types.h>
#include <sys/stat.h>
--- 11,14 ----
***************
*** 90,98 ****
ON_COMMAND(ID_VIEW_CLEARCONSOLE, OnViewClearConsole)
ON_UPDATE_COMMAND_UI(ID_VIEW_CLEARCONSOLE, OnUpdateViewClearConsole)
- ON_COMMAND(ID_CRASHTEST_ILLEGALWRITE, OnCrashTestIllegalWrite)
- ON_COMMAND(ID_CRASHTEST_ILLEGALREAD, OnCrashTestIllegalRead)
- ON_COMMAND(ID_CRASHTEST_ILLEGALREADINCRUNTIME, OnCrashTestIllegalReadInCRuntime)
- ON_COMMAND(ID_CRASHTEST_ILLEGALCODEREAD, OnCrashTestIllegalCodeRead)
- ON_COMMAND(ID_CRASHTEST_DIVIDEBYZERO, OnCrashTestDivideByZero)
ON_WM_CLOSE()
ON_WM_DROPFILES()
--- 88,91 ----
***************
*** 1001,1029 ****
{
pCmdUI->Enable();
- }
-
- void CMainFrame::OnCrashTestIllegalWrite(void)
- {
- CrashTest::IllegalWrite();
- }
-
- void CMainFrame::OnCrashTestIllegalRead(void)
- {
- CrashTest::IllegalRead();
- }
-
- void CMainFrame::OnCrashTestIllegalReadInCRuntime(void)
- {
- CrashTest::IllegalReadInCRuntime();
- }
-
- void CMainFrame::OnCrashTestIllegalCodeRead(void)
- {
- CrashTest::IllegalCodeRead();
- }
-
- void CMainFrame::OnCrashTestDivideByZero(void)
- {
- CrashTest::DivideByZero();
}
--- 994,997 ----
Index: MainFrm.h
===================================================================
RCS file: /project/gme-repository/GMESRC/GME/Gme/MainFrm.h,v
retrieving revision 1.32
retrieving revision 1.33
diff -C2 -d -r1.32 -r1.33
*** MainFrm.h 8 Apr 2008 21:30:45 -0000 1.32
--- MainFrm.h 10 Apr 2008 23:02:08 -0000 1.33
***************
*** 136,144 ****
afx_msg void OnViewClearConsole();
afx_msg void OnUpdateViewClearConsole( CCmdUI* pCmdUI);
- afx_msg void OnCrashTestIllegalWrite();
- afx_msg void OnCrashTestIllegalRead();
- afx_msg void OnCrashTestIllegalReadInCRuntime();
- afx_msg void OnCrashTestIllegalCodeRead();
- afx_msg void OnCrashTestDivideByZero();
afx_msg void CMainFrame::OnClose();
afx_msg void OnDropFiles(HDROP);
--- 136,139 ----
Index: resource.h
===================================================================
RCS file: /project/gme-repository/GMESRC/GME/Gme/resource.h,v
retrieving revision 1.79
retrieving revision 1.80
diff -C2 -d -r1.79 -r1.80
*** resource.h 8 Apr 2008 21:30:45 -0000 1.79
--- resource.h 10 Apr 2008 23:02:08 -0000 1.80
***************
*** 78,81 ****
--- 78,83 ----
#define IDD_CONNECTIVITYDIALOG 216
#define IDR_PORTCONTEXT_MENU 217
+ #define IDR_CRASH_TEST_MENU 218
+ #define IDD_EMERGENCY_DIALOG 219
#define IDC_NAME 1000
#define IDC_TYPENAME 1001
***************
*** 98,101 ****
--- 100,104 ----
#define IDC_PRIORITY_CHECK 1017
#define IDC_CHECK_SPLITTOSUBDIRS 1017
+ #define IDC_MINIDUMP_CHECK 1017
#define IDC_MODELETC 1018
#define IDC_PRIORITY_CHECK2 1018
***************
*** 188,191 ****
--- 191,196 ----
#define IDC_PARTBROWSERCTRL1 1116
#define IDC_LIST1 1124
+ #define IDC_EMERGENCY_INFO_STATIC 1125
+ #define IDC_MINIDUMP_INFO_STATIC 1126
#define IDD_PRINT_DIALOG 1538
#define IDD_PRINTSETUP_DIALOG 1539
***************
*** 417,421 ****
--- 422,431 ----
#define ID_JUMPALONGCONN 33055
#define ID_BACKALONGCONN 33056
+ #define IDS_EMERGENC_YXML 33057
+ #define IDS_EMERGENCY_XML 33057
+ #define IDS_EMERGENCY_PROJ 33058
#define ID_JUMPTOFIRSTOBJ 33059
+ #define IDS_EMERGENCY_NOPROJ 33059
+ #define IDS_CRASHDUMP_INFO 33060
#define ID_JUMPTONEXTOBJ 33061
#define ID_SHOWCONTEXTMENU 33063
***************
*** 424,428 ****
#define ID_PORTCNTX_REVERSECONNECTION 33071
#define ID_PORTCNTX_FOLLOWCONNECTION 33072
- #define ID_DEBUG_CRASHTEST 33080
#define ID_CRASHTEST_ILLEGALWRITE 33081
#define ID_CRASHTEST_ILLEGALREAD 33082
--- 434,437 ----
***************
*** 441,447 ****
#ifndef APSTUDIO_READONLY_SYMBOLS
#define _APS_3D_CONTROLS 1
! #define _APS_NEXT_RESOURCE_VALUE 218
#define _APS_NEXT_COMMAND_VALUE 33086
! #define _APS_NEXT_CONTROL_VALUE 1125
#define _APS_NEXT_SYMED_VALUE 115
#endif
--- 450,456 ----
#ifndef APSTUDIO_READONLY_SYMBOLS
#define _APS_3D_CONTROLS 1
! #define _APS_NEXT_RESOURCE_VALUE 220
#define _APS_NEXT_COMMAND_VALUE 33086
! #define _APS_NEXT_CONTROL_VALUE 1127
#define _APS_NEXT_SYMED_VALUE 115
#endif
Index: GMEView.cpp
===================================================================
RCS file: /project/gme-repository/GMESRC/GME/Gme/GMEView.cpp,v
retrieving revision 1.199
retrieving revision 1.200
diff -C2 -d -r1.199 -r1.200
*** GMEView.cpp 27 Mar 2008 21:43:08 -0000 1.199
--- GMEView.cpp 10 Apr 2008 23:02:08 -0000 1.200
***************
*** 20,23 ****
--- 20,24 ----
#include "GmePrintDialog.h"
#include "ConnityDlg.h"
+ #include "CrashTest.h"
#include "Autoroute/AutoRouter.h"
***************
*** 341,344 ****
--- 342,356 ----
ON_UPDATE_COMMAND_UI(ID_JUMPALONGCONN, OnUpdateJumpAlongConnection)
ON_UPDATE_COMMAND_UI(ID_BACKALONGCONN, OnUpdateBackAlongConnection)
+ ON_COMMAND(ID_CRASHTEST_ILLEGALWRITE, OnCrashTestIllegalWrite)
+ ON_COMMAND(ID_CRASHTEST_ILLEGALREAD, OnCrashTestIllegalRead)
+ ON_COMMAND(ID_CRASHTEST_ILLEGALREADINCRUNTIME, OnCrashTestIllegalReadInCRuntime)
+ ON_COMMAND(ID_CRASHTEST_ILLEGALCODEREAD, OnCrashTestIllegalCodeRead)
+ ON_COMMAND(ID_CRASHTEST_DIVIDEBYZERO, OnCrashTestDivideByZero)
+ ON_UPDATE_COMMAND_UI(IDR_CRASH_TEST_MENU, OnUpdateCrashTestMenu)
+ ON_UPDATE_COMMAND_UI(ID_CRASHTEST_ILLEGALWRITE, OnUpdateCrashTestIllegalWrite)
+ ON_UPDATE_COMMAND_UI(ID_CRASHTEST_ILLEGALREAD, OnUpdateCrashTestIllegalRead)
+ ON_UPDATE_COMMAND_UI(ID_CRASHTEST_ILLEGALREADINCRUNTIME, OnUpdateCrashTestIllegalReadInCRuntime)
+ ON_UPDATE_COMMAND_UI(ID_CRASHTEST_ILLEGALCODEREAD, OnUpdateCrashTestIllegalCodeRead)
+ ON_UPDATE_COMMAND_UI(ID_CRASHTEST_DIVIDEBYZERO, OnUpdateCrashTestDivideByZero)
ON_COMMAND(ID_CNTX_PREFERENCES, OnCntxPreferences)
ON_COMMAND(ID_EDIT_PREFERENCES, OnEditPreferences)
***************
*** 4559,4562 ****
--- 4571,4579 ----
CMenu *submenu = menu.GetSubMenu(0);
currentAspect->InitContextMenu(submenu);
+ #if defined (_DEBUG)
+ CMenu crashTestMenu;
+ crashTestMenu.LoadMenu(IDR_CRASH_TEST_MENU);
+ submenu->AppendMenu(MF_POPUP, (UINT_PTR)((HMENU)crashTestMenu), "Debug");
+ #endif
submenu->TrackPopupMenu(TPM_LEFTALIGN | TPM_RIGHTBUTTON,
global.x,global.y,GetParent());
***************
*** 5979,5982 ****
--- 5996,6054 ----
{
pCmdUI->Enable( areConnsForSels( selected, true));
+ }
+
+ void CGMEView::OnCrashTestIllegalWrite(void)
+ {
+ CrashTest::IllegalWrite();
+ }
+
+ void CGMEView::OnCrashTestIllegalRead(void)
+ {
+ CrashTest::IllegalRead();
+ }
+
+ void CGMEView::OnCrashTestIllegalReadInCRuntime(void)
+ {
+ CrashTest::IllegalReadInCRuntime();
+ }
+
+ void CGMEView::OnCrashTestIllegalCodeRead(void)
+ {
+ CrashTest::IllegalCodeRead();
+ }
+
+ void CGMEView::OnCrashTestDivideByZero(void)
+ {
+ CrashTest::DivideByZero();
+ }
+
+ void CGMEView::OnUpdateCrashTestMenu(CCmdUI* pCmdUI)
+ {
+ pCmdUI->Enable();
+ }
+
+ void CGMEView::OnUpdateCrashTestIllegalWrite(CCmdUI* pCmdUI)
+ {
+ pCmdUI->Enable();
+ }
+
+ void CGMEView::OnUpdateCrashTestIllegalRead(CCmdUI* pCmdUI)
+ {
+ pCmdUI->Enable();
+ }
+
+ void CGMEView::OnUpdateCrashTestIllegalReadInCRuntime(CCmdUI* pCmdUI)
+ {
+ pCmdUI->Enable();
+ }
+
+ void CGMEView::OnUpdateCrashTestIllegalCodeRead(CCmdUI* pCmdUI)
+ {
+ pCmdUI->Enable();
+ }
+
+ void CGMEView::OnUpdateCrashTestDivideByZero(CCmdUI* pCmdUI)
+ {
+ pCmdUI->Enable();
}
Index: GMEApp.cpp
===================================================================
RCS file: /project/gme-repository/GMESRC/GME/Gme/GMEApp.cpp,v
retrieving revision 1.151
retrieving revision 1.152
diff -C2 -d -r1.151 -r1.152
*** GMEApp.cpp 8 Apr 2008 21:30:45 -0000 1.151
--- GMEApp.cpp 10 Apr 2008 23:02:08 -0000 1.152
***************
*** 29,32 ****
--- 29,33 ----
#include "GMEPrintDialog.h"
#include "ExceptionHandler.h"
+ #include "EmergencySaveDlg.h"
#ifdef _DEBUG
***************
*** 389,418 ****
void CGMEApp::EmergencyTerminate()
{
! theApp.EmergencySave();
}
! bool CGMEApp::EmergencySave()
! {
CGMEEventLogger::LogGMEEvent("EMERGENCY EVENT\r\n");
if (mgaProject && (proj_type_is_mga || proj_type_is_xmlbackend)) {
! CString embackupname = currentConnection;
! int p = embackupname.ReverseFind('.');
! if ((p == -1) || embackupname.Find('\\', p) != -1)
! p = embackupname.GetLength();
! CString emcode("-emergency");
! static emnum;
! char emfield[10];
! sprintf(emfield, "%d", ++emnum);
! emcode += emfield;
! embackupname.Insert(p, emcode);
#pragma warning(disable: 4310) // cast truncates constant value
! HRESULT hr = mgaProject->Save(PutInBstr(embackupname), VARIANT_TRUE);
#pragma warning(default: 4310) // cast truncates constant value
if (proj_type_is_xmlbackend) {
! AfxMessageBox("Emergency event. Please, restart GME. Your current work is found in the local checkout directory.");
} else {
! char buf[200];
! sprintf(buf, "Emergency event. Your current work %s been saved to %s.\nThe original project file has not been modified.\nWe apologize for the inconvenience.", (hr == S_OK)? "has" : "may have", embackupname);
! AfxMessageBox(buf);
m_RecentProjectList.Add(embackupname);
--- 390,429 ----
void CGMEApp::EmergencyTerminate()
{
! theApp.EmergencySave(SaveAndBringUpMessageBox);
}
! BOOL CGMEApp::EmergencySave(EmergencySaveMode saveMode)
! {
CGMEEventLogger::LogGMEEvent("EMERGENCY EVENT\r\n");
+ CString emergencySaveMsg;
+ CString embackupname;
if (mgaProject && (proj_type_is_mga || proj_type_is_xmlbackend)) {
! if (saveMode == DoTheSaveOnly && emergencyBackupName.GetLength() > 0) {
! embackupname = emergencyBackupName;
! } else {
! embackupname = currentConnection;
! int p = embackupname.ReverseFind('.');
! if ((p == -1) || embackupname.Find('\\', p) != -1)
! p = embackupname.GetLength();
! CString emcode("-emergency");
! static emnum;
! char emfield[10];
! sprintf(emfield, "%d", ++emnum);
! emcode += emfield;
! embackupname.Insert(p, emcode);
! }
! HRESULT hr = S_OK;
! if (saveMode == SaveAndBringUpMessageBox || saveMode == DoTheSaveOnly) {
#pragma warning(disable: 4310) // cast truncates constant value
! hr = mgaProject->Save(PutInBstr(embackupname), VARIANT_TRUE);
#pragma warning(default: 4310) // cast truncates constant value
+ emergencyBackupName.Empty();
+ }
if (proj_type_is_xmlbackend) {
! if (saveMode != DoTheSaveOnly)
! emergencySaveMsg.LoadString(IDS_EMERGENCY_XML);
} else {
! if (saveMode != DoTheSaveOnly)
! emergencySaveMsg.FormatMessage(IDS_EMERGENCY_PROJ, (hr == S_OK)? "has" : "may have", embackupname);
m_RecentProjectList.Add(embackupname);
***************
*** 420,426 ****
}
} else {
! AfxMessageBox("Emergency event. Please, restart GME.");
}
! return true;
}
--- 431,456 ----
}
} else {
! if (saveMode != DoTheSaveOnly)
! emergencySaveMsg.LoadString(IDS_EMERGENCY_NOPROJ);
}
! if (saveMode == SaveAndBringUpMessageBox) {
! AfxMessageBox(emergencySaveMsg);
! } else if (saveMode == BringUpDialogOnly) {
! emergencyBackupName = embackupname;
! CString miniDumpMsg;
! miniDumpMsg.LoadString(IDS_CRASHDUMP_INFO);
! EmergencySaveDlg cdl(NULL);
! cdl.SetStrings(emergencySaveMsg, miniDumpMsg);
! if (cdl.DoModal() == IDOK) {
! if (cdl.ShouldWriteMiniDump())
! OutputDebugString("Should write Minidump\n");
! else
! OutputDebugString("Should not write Minidump\n");
! } else {
! OutputDebugString("Escaped\n");
! }
! return cdl.ShouldWriteMiniDump();
! }
! return TRUE;
}
***************
*** 431,440 ****
} else {
__try {
- OutputDebugString("CWinApp::Run\n");
return CWinApp::Run();
}
__except(ExceptionHandler::UnhandledExceptionFilterOfMain(GetExceptionCode(), GetExceptionInformation())) {
! EmergencySave();
!
// Modified by Peter:let's exit after emergency event
--- 461,468 ----
} else {
__try {
return CWinApp::Run();
}
__except(ExceptionHandler::UnhandledExceptionFilterOfMain(GetExceptionCode(), GetExceptionInformation())) {
! EmergencySave(DoTheSaveOnly);
// Modified by Peter:let's exit after emergency event
Index: GME.vcproj
===================================================================
RCS file: /project/gme-repository/GMESRC/GME/Gme/GME.vcproj,v
retrieving revision 1.8
retrieving revision 1.9
diff -C2 -d -r1.8 -r1.9
*** GME.vcproj 8 Apr 2008 21:30:45 -0000 1.8
--- GME.vcproj 10 Apr 2008 23:02:08 -0000 1.9
***************
*** 437,440 ****
--- 437,443 ----
</File>
<File
+ RelativePath=".\EmergencySaveDlg.cpp">
+ </File>
+ <File
RelativePath="EnumVar.cpp">
<FileConfiguration
***************
*** 1479,1482 ****
--- 1482,1488 ----
<File
RelativePath=".\DynMenu.h">
+ </File>
+ <File
+ RelativePath=".\EmergencySaveDlg.h">
</File>
<File
--- NEW FILE: EmergencySaveDlg.h ---
#if !defined(AFX_DIALOGLIST_H__56AB0CFA_ADAB_49E8_8215_2BECE389A707__INCLUDED_)
#define AFX_DIALOGLIST_H__56AB0CFA_ADAB_49E8_8215_2BECE389A707__INCLUDED_
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
// EmergencySaveDlg.h : header file
//
/////////////////////////////////////////////////////////////////////////////
// EmergencySaveDlg dialog
#include "resource.h"
class EmergencySaveDlg: public CDialog
{
DECLARE_DYNAMIC(EmergencySaveDlg)
public:
EmergencySaveDlg(CWnd* pParent = NULL);
virtual ~EmergencySaveDlg();
// Dialog Data
//{{AFX_DATA(EmergencySaveDlg)
enum { IDD = IDD_EMERGENCY_DIALOG };
CButton m_buttonOK;
CButton m_checkboxMinidump;
CStatic m_staticEmergencySaveInfo;
CStatic m_staticMinidumpSaveInfo;
BOOL m_minidumpChecked;
CString m_strEmergencySaveInfo;
CString m_strMinidumpSaveInfo;
//}}AFX_DATA
// Overrides
// ClassWizard generated virtual function overrides
//{{AFX_VIRTUAL(EmergencySaveDlg)
protected:
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support
afx_msg void OnMinidumpCheckboxClicked();
//}}AFX_VIRTUAL
// Generated message map functions
//{{AFX_MSG(EmergencySaveDlg)
virtual BOOL OnInitDialog();
//}}AFX_MSG
DECLARE_MESSAGE_MAP()
public:
void SetStrings(CString emergencySaveInfo, CString minidumpSaveInfo);
BOOL ShouldWriteMiniDump(void);
};
//{{AFX_INSERT_LOCATION}}
// Microsoft Visual C++ will insert additional declarations immediately before the previous line.
#endif // !defined(AFX_DIALOGLIST_H__56AB0CFA_ADAB_49E8_8215_2BECE389A707__INCLUDED_)
Index: ExceptionHandler.cpp
===================================================================
RCS file: /project/gme-repository/GMESRC/GME/Gme/ExceptionHandler.cpp,v
retrieving revision 1.1
retrieving revision 1.2
diff -C2 -d -r1.1 -r1.2
*** ExceptionHandler.cpp 8 Apr 2008 21:30:45 -0000 1.1
--- ExceptionHandler.cpp 10 Apr 2008 23:02:08 -0000 1.2
***************
*** 36,39 ****
--- 36,40 ----
#include "ExceptionXMLTags.h"
#include "GMEVersion.h"
+ #include "GMEApp.h"
#include <float.h>
***************
*** 432,441 ****
EnterCriticalSection(&m_crashDumpLock);
! LoadDbgHelpDll();
! GenerateUserStreamData(msg, pExp);
! OutputDebugString(m_UserCrashData);
! TCHAR generatedFileName[MAX_PATH];
! GenerateFileName(generatedFileName);
! GenerateMiniDump(pExp, generatedFileName);
LeaveCriticalSection(&m_crashDumpLock);
--- 433,446 ----
EnterCriticalSection(&m_crashDumpLock);
! m_createMinidump = theApp.EmergencySave(CGMEApp::BringUpDialogOnly);
!
! if (m_createMinidump) {
! LoadDbgHelpDll();
! GenerateUserStreamData(msg, pExp);
! OutputDebugString(m_UserCrashData);
! TCHAR generatedFileName[MAX_PATH];
! GenerateFileName(generatedFileName);
! GenerateMiniDump(pExp, generatedFileName);
! }
LeaveCriticalSection(&m_crashDumpLock);
Index: GME.rc
===================================================================
RCS file: /project/gme-repository/GMESRC/GME/Gme/GME.rc,v
retrieving revision 1.168
retrieving revision 1.169
diff -C2 -d -r1.168 -r1.169
*** GME.rc 8 Apr 2008 21:30:45 -0000 1.168
--- GME.rc 10 Apr 2008 23:02:08 -0000 1.169
***************
*** 243,264 ****
MENUITEM "&About GME...", ID_APP_ABOUT
END
- #ifdef _DEBUG
- POPUP "&Debug"
- BEGIN
- POPUP "Crash Test"
- BEGIN
- MENUITEM "Illegal write", ID_CRASHTEST_ILLEGALWRITE
-
- MENUITEM "Illegal Read", ID_CRASHTEST_ILLEGALREAD
- MENUITEM "Illegal Read in C runtime", ID_CRASHTEST_ILLEGALREADINCRUNTIME
-
- MENUITEM "Illegal code read (jump to zero address)",
- ID_CRASHTEST_ILLEGALCODEREAD
-
- MENUITEM "Divide by zero", ID_CRASHTEST_DIVIDEBYZERO
-
- END
- END
- #endif
END
--- 243,246 ----
***************
*** 380,401 ****
MENUITEM "&Arrange Icons", ID_WINDOW_ARRANGE
END
- #ifdef _DEBUG
- POPUP "&Debug"
- BEGIN
- POPUP "Crash Test"
- BEGIN
- MENUITEM "Illegal write", ID_CRASHTEST_ILLEGALWRITE
-
- MENUITEM "Illegal Read", ID_CRASHTEST_ILLEGALREAD
- MENUITEM "Illegal Read in C runtime", ID_CRASHTEST_ILLEGALREADINCRUNTIME
-
- MENUITEM "Illegal code read (jump to zero address)",
- ID_CRASHTEST_ILLEGALCODEREAD
-
- MENUITEM "Divide by zero", ID_CRASHTEST_DIVIDEBYZERO
-
- END
- END
- #endif
POPUP "&Help"
BEGIN
--- 362,365 ----
***************
*** 653,656 ****
--- 617,634 ----
END
+ IDR_CRASH_TEST_MENU MENU
+ BEGIN
+ POPUP "Crash Test"
+ BEGIN
+ MENUITEM "Illegal write", ID_CRASHTEST_ILLEGALWRITE
+ MENUITEM "Illegal Read", ID_CRASHTEST_ILLEGALREAD
+ MENUITEM "Illegal Read in C runtime", ID_CRASHTEST_ILLEGALREADINCRUNTIME
+
+ MENUITEM "Illegal code read (jump to zero address)",
+ ID_CRASHTEST_ILLEGALCODEREAD
+ MENUITEM "Divide by zero", ID_CRASHTEST_DIVIDEBYZERO
+ END
+ END
+
/////////////////////////////////////////////////////////////////////////////
***************
*** 743,747 ****
FONT 10, "MS Sans Serif", 0, 0, 0x0
BEGIN
! CTEXT GME_VERSION_STR,IDC_STATIC,7,65,165,8,SS_NOPREFIX
CTEXT "Copyright © 2000-2008 Vanderbilt University",IDC_STATIC,
7,135,165,8
--- 721,725 ----
FONT 10, "MS Sans Serif", 0, 0, 0x0
BEGIN
! CTEXT "8.2.22",IDC_STATIC,7,65,165,8,SS_NOPREFIX
CTEXT "Copyright © 2000-2008 Vanderbilt University",IDC_STATIC,
7,135,165,8
***************
*** 1163,1166 ****
--- 1141,1159 ----
END
+ IDD_EMERGENCY_DIALOG DIALOGEX 0, 0, 315, 147
+ STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | WS_POPUP | WS_CAPTION |
+ WS_SYSMENU
+ CAPTION "Emergency Save and CrashDump"
+ FONT 8, "MS Shell Dlg", 400, 0, 0x1
+ BEGIN
+ DEFPUSHBUTTON "OK",IDOK,258,126,50,14
+ CONTROL "Write MiniDump crash report",IDC_MINIDUMP_CHECK,"Button",
+ BS_AUTOCHECKBOX | WS_TABSTOP,7,98,301,17
+ LTEXT "Emergency Save Information",IDC_EMERGENCY_INFO_STATIC,7,
+ 7,301,24
+ LTEXT "MiniDump crash dump information",
+ IDC_MINIDUMP_INFO_STATIC,7,35,301,57
+ END
+
/////////////////////////////////////////////////////////////////////////////
***************
*** 1367,1370 ****
--- 1360,1371 ----
BOTTOMMARGIN, 79
END
+
+ IDD_EMERGENCY_DIALOG, DIALOG
+ BEGIN
+ LEFTMARGIN, 7
+ RIGHTMARGIN, 308
+ TOPMARGIN, 7
+ BOTTOMMARGIN, 140
+ END
END
#endif // APSTUDIO_INVOKED
***************
*** 1725,1728 ****
--- 1726,1733 ----
BEGIN
ID_BACKALONGCONN "Jump to the source of an incoming connection\nJump Along Incoming Connection"
+ IDS_EMERGENCY_XML "Emergency event. Please, restart GME. Your current work is found in the local checkout directory."
+ IDS_EMERGENCY_PROJ "Emergency event. Your current work %1 been saved to %2.\nThe original project file has not been modified.\nWe apologize for the inconvenience."
+ IDS_EMERGENCY_NOPROJ "Emergency event. Please, restart GME."
+ IDS_CRASHDUMP_INFO "The program can generate a Microsoft MiniDump type crash report about this particular crash issue. Developers can use this to analyze the crash, so it can significantly improve the quality of the program. The native Micorosft and the XML data in the file contains call stack, register dump, and other crash related information. We need your help to improve GME! If your project is not classified, please check the checkbox below to generate the crash dump and send us the resulting .dmp file. Thanks for your help and we appologize about the crash!"
END
- Previous message: [GME-commit] GMESRC/GME/Search SearchDlg.cpp,1.21,1.22
- Next message: [GME-commit] GMESRC/GME/Gme ExceptionHandler.cpp, 1.2, 1.3 ExceptionHandler.h, 1.1, 1.2 GMEApp.cpp, 1.152, 1.153 GMEView.cpp, 1.200, 1.201 GMEView.h, 1.83, 1.84 StdAfx.h, 1.12, 1.13
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
More information about the GME-commit
mailing list