diff options
Diffstat (limited to 'src/burn/engine/elevation.cpp')
| -rw-r--r-- | src/burn/engine/elevation.cpp | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/src/burn/engine/elevation.cpp b/src/burn/engine/elevation.cpp index 636d67ce..3c2872f1 100644 --- a/src/burn/engine/elevation.cpp +++ b/src/burn/engine/elevation.cpp | |||
| @@ -43,6 +43,7 @@ typedef enum _BURN_ELEVATION_MESSAGE_TYPE | |||
| 43 | BURN_ELEVATION_MESSAGE_TYPE_BURN_CACHE_COMPLETE, | 43 | BURN_ELEVATION_MESSAGE_TYPE_BURN_CACHE_COMPLETE, |
| 44 | BURN_ELEVATION_MESSAGE_TYPE_BURN_CACHE_SUCCESS, | 44 | BURN_ELEVATION_MESSAGE_TYPE_BURN_CACHE_SUCCESS, |
| 45 | BURN_ELEVATION_MESSAGE_TYPE_EXECUTE_PROGRESS, | 45 | BURN_ELEVATION_MESSAGE_TYPE_EXECUTE_PROGRESS, |
| 46 | BURN_ELEVATION_MESSAGE_TYPE_EXECUTE_PROCESS_CANCEL, | ||
| 46 | BURN_ELEVATION_MESSAGE_TYPE_EXECUTE_ERROR, | 47 | BURN_ELEVATION_MESSAGE_TYPE_EXECUTE_ERROR, |
| 47 | BURN_ELEVATION_MESSAGE_TYPE_EXECUTE_MSI_MESSAGE, | 48 | BURN_ELEVATION_MESSAGE_TYPE_EXECUTE_MSI_MESSAGE, |
| 48 | BURN_ELEVATION_MESSAGE_TYPE_EXECUTE_MSI_FILES_IN_USE, | 49 | BURN_ELEVATION_MESSAGE_TYPE_EXECUTE_MSI_FILES_IN_USE, |
| @@ -1812,7 +1813,14 @@ static HRESULT ProcessGenericExecuteMessages( | |||
| 1812 | 1813 | ||
| 1813 | // read message parameters | 1814 | // read message parameters |
| 1814 | hr = BuffReadNumber((BYTE*)pMsg->pvData, pMsg->cbData, &iData, &message.progress.dwPercentage); | 1815 | hr = BuffReadNumber((BYTE*)pMsg->pvData, pMsg->cbData, &iData, &message.progress.dwPercentage); |
| 1815 | ExitOnFailure(hr, "Failed to progress."); | 1816 | ExitOnFailure(hr, "Failed to read progress."); |
| 1817 | break; | ||
| 1818 | |||
| 1819 | case BURN_ELEVATION_MESSAGE_TYPE_EXECUTE_PROCESS_CANCEL: | ||
| 1820 | message.type = GENERIC_EXECUTE_MESSAGE_PROCESS_CANCEL; | ||
| 1821 | |||
| 1822 | hr = BuffReadNumber((BYTE*)pMsg->pvData, pMsg->cbData, &iData, &message.processCancel.dwProcessId); | ||
| 1823 | ExitOnFailure(hr, "Failed to read processId."); | ||
| 1816 | break; | 1824 | break; |
| 1817 | 1825 | ||
| 1818 | case BURN_ELEVATION_MESSAGE_TYPE_EXECUTE_ERROR: | 1826 | case BURN_ELEVATION_MESSAGE_TYPE_EXECUTE_ERROR: |
| @@ -3450,6 +3458,13 @@ static int GenericExecuteMessageHandler( | |||
| 3450 | dwMessage = BURN_ELEVATION_MESSAGE_TYPE_EXECUTE_PROGRESS; | 3458 | dwMessage = BURN_ELEVATION_MESSAGE_TYPE_EXECUTE_PROGRESS; |
| 3451 | break; | 3459 | break; |
| 3452 | 3460 | ||
| 3461 | case GENERIC_EXECUTE_MESSAGE_PROCESS_CANCEL: | ||
| 3462 | hr = BuffWriteNumber(&pbData, &cbData, pMessage->processCancel.dwProcessId); | ||
| 3463 | ExitOnFailure(hr, "Failed to write progress percentage to message buffer."); | ||
| 3464 | |||
| 3465 | dwMessage = BURN_ELEVATION_MESSAGE_TYPE_EXECUTE_PROCESS_CANCEL; | ||
| 3466 | break; | ||
| 3467 | |||
| 3453 | case GENERIC_EXECUTE_MESSAGE_ERROR: | 3468 | case GENERIC_EXECUTE_MESSAGE_ERROR: |
| 3454 | // serialize message data | 3469 | // serialize message data |
| 3455 | hr = BuffWriteNumber(&pbData, &cbData, pMessage->error.dwErrorCode); | 3470 | hr = BuffWriteNumber(&pbData, &cbData, pMessage->error.dwErrorCode); |
