DBG: delete the DLL loader on exit (closes issue #1496)
This commit is contained in:
parent
15f447cf94
commit
62b8e4fe11
|
@ -199,7 +199,7 @@ static String lastDebugText;
|
|||
static duint timeWastedDebugging = 0;
|
||||
static EXCEPTION_DEBUG_INFO lastExceptionInfo = { 0 };
|
||||
static char szDebuggeeInitializationScript[MAX_PATH] = "";
|
||||
static WString gInitExe, gInitCmd, gInitDir;
|
||||
static WString gInitExe, gInitCmd, gInitDir, gDllLoader;
|
||||
char szProgramDir[MAX_PATH] = "";
|
||||
char szFileName[MAX_PATH] = "";
|
||||
char szSymbolCachePath[MAX_PATH] = "";
|
||||
|
@ -1444,6 +1444,9 @@ static void cbCreateProcess(CREATE_PROCESS_DEBUG_INFO* CreateProcessInfo)
|
|||
|
||||
bTraceRecordEnabledDuringTrace = settingboolget("Engine", "TraceRecordEnabledDuringTrace");
|
||||
}
|
||||
else if(bFileIsDll && strstr(DebugFileName, "DLLLoader" ArchValue("32", "64"))) //DLL Loader
|
||||
gDllLoader = StringUtils::Utf8ToUtf16(DebugFileName);
|
||||
|
||||
GuiUpdateBreakpointsView();
|
||||
|
||||
//call plugin callback
|
||||
|
@ -2721,6 +2724,11 @@ static void debugLoopFunction(void* lpParameter, bool attach)
|
|||
pDebuggedBase = 0;
|
||||
pCreateProcessBase = 0;
|
||||
isDetachedByUser = false;
|
||||
if(!gDllLoader.empty()) //Delete the DLL loader (#1496)
|
||||
{
|
||||
DeleteFileW(gDllLoader.c_str());
|
||||
gDllLoader.clear();
|
||||
}
|
||||
}
|
||||
|
||||
void dbgsetdebuggeeinitscript(const char* fileName)
|
||||
|
|
Loading…
Reference in New Issue