diff options
Diffstat (limited to 'src/engine/engine.cpp')
-rw-r--r-- | src/engine/engine.cpp | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/src/engine/engine.cpp b/src/engine/engine.cpp index e2728d7f..8f024e98 100644 --- a/src/engine/engine.cpp +++ b/src/engine/engine.cpp | |||
@@ -324,6 +324,7 @@ static HRESULT InitializeEngineState( | |||
324 | LPCWSTR wzParam = NULL; | 324 | LPCWSTR wzParam = NULL; |
325 | HANDLE hSectionFile = hEngineFile; | 325 | HANDLE hSectionFile = hEngineFile; |
326 | HANDLE hSourceEngineFile = INVALID_HANDLE_VALUE; | 326 | HANDLE hSourceEngineFile = INVALID_HANDLE_VALUE; |
327 | DWORD64 qw = 0; | ||
327 | 328 | ||
328 | pEngineState->automaticUpdates = BURN_AU_PAUSE_ACTION_IFELEVATED; | 329 | pEngineState->automaticUpdates = BURN_AU_PAUSE_ACTION_IFELEVATED; |
329 | pEngineState->dwElevatedLoggingTlsId = TLS_OUT_OF_INDEXES; | 330 | pEngineState->dwElevatedLoggingTlsId = TLS_OUT_OF_INDEXES; |
@@ -343,8 +344,10 @@ static HRESULT InitializeEngineState( | |||
343 | ExitOnRootFailure(hr = E_INVALIDARG, "Missing required parameter for switch: %ls", BURN_COMMANDLINE_SWITCH_FILEHANDLE_ATTACHED); | 344 | ExitOnRootFailure(hr = E_INVALIDARG, "Missing required parameter for switch: %ls", BURN_COMMANDLINE_SWITCH_FILEHANDLE_ATTACHED); |
344 | } | 345 | } |
345 | 346 | ||
346 | hr = StrStringToUInt32(wzParam, 0, reinterpret_cast<UINT*>(&hSourceEngineFile)); | 347 | hr = StrStringToUInt64(wzParam, 0, &qw); |
347 | ExitOnFailure(hr, "Failed to parse file handle: '%ls'", (wzParam)); | 348 | ExitOnFailure(hr, "Failed to parse file handle: '%ls'", (wzParam)); |
349 | |||
350 | hSourceEngineFile = (HANDLE)qw; | ||
348 | } | 351 | } |
349 | if (CSTR_EQUAL == ::CompareStringW(LOCALE_INVARIANT, NORM_IGNORECASE, &pEngineState->argv[i][1], lstrlenW(BURN_COMMANDLINE_SWITCH_FILEHANDLE_SELF), BURN_COMMANDLINE_SWITCH_FILEHANDLE_SELF, lstrlenW(BURN_COMMANDLINE_SWITCH_FILEHANDLE_SELF))) | 352 | if (CSTR_EQUAL == ::CompareStringW(LOCALE_INVARIANT, NORM_IGNORECASE, &pEngineState->argv[i][1], lstrlenW(BURN_COMMANDLINE_SWITCH_FILEHANDLE_SELF), BURN_COMMANDLINE_SWITCH_FILEHANDLE_SELF, lstrlenW(BURN_COMMANDLINE_SWITCH_FILEHANDLE_SELF))) |
350 | { | 353 | { |
@@ -354,8 +357,10 @@ static HRESULT InitializeEngineState( | |||
354 | ExitOnRootFailure(hr = E_INVALIDARG, "Missing required parameter for switch: %ls", BURN_COMMANDLINE_SWITCH_FILEHANDLE_SELF); | 357 | ExitOnRootFailure(hr = E_INVALIDARG, "Missing required parameter for switch: %ls", BURN_COMMANDLINE_SWITCH_FILEHANDLE_SELF); |
355 | } | 358 | } |
356 | 359 | ||
357 | hr = StrStringToUInt32(wzParam, 0, reinterpret_cast<UINT*>(&hSectionFile)); | 360 | hr = StrStringToUInt64(wzParam, 0, &qw); |
358 | ExitOnFailure(hr, "Failed to parse file handle: '%ls'", (wzParam)); | 361 | ExitOnFailure(hr, "Failed to parse file handle: '%ls'", (wzParam)); |
362 | |||
363 | hSectionFile = (HANDLE)qw; | ||
359 | } | 364 | } |
360 | } | 365 | } |
361 | } | 366 | } |