From e4bbc369f97fa1970401eefcc49f1ea090158c1e Mon Sep 17 00:00:00 2001 From: "SND\\EreTIk_cp" Date: Wed, 31 Aug 2011 17:36:15 +0000 Subject: [PATCH] [~] viod -> void [+] variable for PyThread_StateSave git-svn-id: https://pykd.svn.codeplex.com/svn@69451 9b283d60-5439-405e-af05-b73fd8c4d996 --- pykd/dbgbreak.cpp | 2 +- pykd/dbgevent.cpp | 14 +++++++------- pykd/dbgext.cpp | 11 +++++------ pykd/dbgext.h | 18 +++++++++--------- pykd/pyaux.h | 9 ++++++--- 5 files changed, 28 insertions(+), 26 deletions(-) diff --git a/pykd/dbgbreak.cpp b/pykd/dbgbreak.cpp index db28a82..ac82a93 100644 --- a/pykd/dbgbreak.cpp +++ b/pykd/dbgbreak.cpp @@ -14,7 +14,7 @@ dbgBreakpointClass::breakpointMap dbgBreakpointClass::m_breakMap; HRESULT dbgBreakpointClass::onBreakpointEvnet( IDebugBreakpoint* bp ) { - PyThread_StateSave( dbgExt->getThreadState() ); + PyThread_StateSave pyThrdState( dbgExt->getThreadState() ); try { diff --git a/pykd/dbgevent.cpp b/pykd/dbgevent.cpp index 6d8fbc6..2d02b98 100644 --- a/pykd/dbgevent.cpp +++ b/pykd/dbgevent.cpp @@ -69,8 +69,8 @@ HRESULT debugEvent::LoadModule( dbgModuleClass module(moduleName, moduleBase, moduleSize); silentMode.reset(); - PyThread_StateSave( dbgExt->getThreadState() ); - + PyThread_StateSave pyThrdState( dbgExt->getThreadState() ); + return onLoadModule( module ); } @@ -91,8 +91,8 @@ HRESULT debugEvent::UnloadModule( dbgModuleClass module(moduleName, moduleBase, moduleSize); silentMode.reset(); - PyThread_StateSave( dbgExt->getThreadState() ); - + PyThread_StateSave pyThrdState( dbgExt->getThreadState() ); + return onUnloadModule( module ); } @@ -102,7 +102,7 @@ HRESULT debugEvent::SessionStatus( __in ULONG Status ) { - PyThread_StateSave( dbgExt->getThreadState() ); + PyThread_StateSave pyThrdState( dbgExt->getThreadState() ); return onChangeSessionStatus( Status ); } @@ -114,10 +114,10 @@ HRESULT debugEvent::ChangeDebuggeeState( __in ULONG64 Argument ) { - PyThread_StateSave( dbgExt->getThreadState() ); + PyThread_StateSave pyThrdState( dbgExt->getThreadState() ); return onChangeDebugeeState(); } /////////////////////////////////////////////////////////////////////////////////// - + diff --git a/pykd/dbgext.cpp b/pykd/dbgext.cpp index 8aacd22..24ade92 100644 --- a/pykd/dbgext.cpp +++ b/pykd/dbgext.cpp @@ -249,7 +249,7 @@ BOOST_PYTHON_MODULE( pykd ) DEF_PY_GLOBAL( "ulong_t", TypeInfo("", "unsigned long") ); DEF_PY_GLOBAL( "int_t", TypeInfo("", "int") ); DEF_PY_GLOBAL( "uint_t", TypeInfo("", "unsigned int") ); - DEF_PY_GLOBAL( "ptr_t", TypeInfo("", "viod*") ); + DEF_PY_GLOBAL( "ptr_t", TypeInfo("", "void*") ); DEF_PY_GLOBAL( "double_t", TypeInfo("", "double") ); DEF_PY_GLOBAL( "longlong_t", TypeInfo("", "int64") ); DEF_PY_GLOBAL( "ulonglong_t", TypeInfo("", "unsigned int64") ); @@ -702,10 +702,9 @@ DebugExtensionUninitialize() WindbgGlobalSession::StopWindbgSession(); } -DbgExt::DbgExt( IDebugClient4 *masterClient ) +DbgExt::DbgExt( IDebugClient4 *masterClient ) + : m_threadState(NULL) { - m_threadState = NULL; - client = NULL; masterClient->QueryInterface( __uuidof(IDebugClient), (void **)&client ); @@ -747,7 +746,7 @@ DbgExt::DbgExt( IDebugClient4 *masterClient ) system2 = NULL; masterClient->QueryInterface( __uuidof(IDebugSystemObjects2), (void**)&system2 ); - + m_previosExt = dbgExt; dbgExt = this; } @@ -761,7 +760,7 @@ DbgExt::~DbgExt() client4->Release(); if ( client5 ) - client5->Release(); + client5->Release(); if ( control ) control->Release(); diff --git a/pykd/dbgext.h b/pykd/dbgext.h index 19effe0..aa33c2e 100644 --- a/pykd/dbgext.h +++ b/pykd/dbgext.h @@ -10,26 +10,26 @@ public: IDebugClient *client; IDebugClient4 *client4; IDebugClient5 *client5; - + IDebugControl *control; IDebugControl4 *control4; - + IDebugRegisters *registers; - + IDebugSymbols *symbols; IDebugSymbols2 *symbols2; IDebugSymbols3 *symbols3; - + IDebugDataSpaces *dataSpaces; IDebugDataSpaces4 *dataSpaces4; - + IDebugAdvanced2 *advanced2; - + IDebugSystemObjects *system; IDebugSystemObjects2 *system2; - - DbgExt( IDebugClient4 *client ); - + + DbgExt( IDebugClient4 *client ); + ~DbgExt(); PyThreadState** diff --git a/pykd/pyaux.h b/pykd/pyaux.h index 2a1954c..3768aa5 100644 --- a/pykd/pyaux.h +++ b/pykd/pyaux.h @@ -15,16 +15,19 @@ class PyThread_StateSave { public: - PyThread_StateSave( PyThreadState **state ) { + PyThread_StateSave( PyThreadState **state ) + : m_state(NULL) + { if ( *state != NULL ) { - m_state = state; + m_state = state; PyEval_RestoreThread( *m_state ); } } ~PyThread_StateSave() { - *m_state =PyEval_SaveThread(); + if (m_state) + *m_state =PyEval_SaveThread(); } private: