diff options
author | Sean Hall <r.sean.hall@gmail.com> | 2021-12-15 10:48:06 -0600 |
---|---|---|
committer | Sean Hall <r.sean.hall@gmail.com> | 2021-12-30 15:00:45 -0600 |
commit | 9e2cda60e3852660f235beb5e0af1c746d0045e6 (patch) | |
tree | 8fca357e80bf638750fe900c4803a081e16adee8 /src/libs/dutil | |
parent | 07599b27596af68f0917c1afc6a748af3a3cda2f (diff) | |
download | wix-9e2cda60e3852660f235beb5e0af1c746d0045e6.tar.gz wix-9e2cda60e3852660f235beb5e0af1c746d0045e6.tar.bz2 wix-9e2cda60e3852660f235beb5e0af1c746d0045e6.zip |
FilesInUse messages are too different to unify in the Burn engine.
Fixes #6348
Diffstat (limited to 'src/libs/dutil')
-rw-r--r-- | src/libs/dutil/WixToolset.DUtil/inc/wiutil.h | 4 | ||||
-rw-r--r-- | src/libs/dutil/WixToolset.DUtil/wiutil.cpp | 16 |
2 files changed, 11 insertions, 9 deletions
diff --git a/src/libs/dutil/WixToolset.DUtil/inc/wiutil.h b/src/libs/dutil/WixToolset.DUtil/inc/wiutil.h index 9c2de209..0ddcd893 100644 --- a/src/libs/dutil/WixToolset.DUtil/inc/wiutil.h +++ b/src/libs/dutil/WixToolset.DUtil/inc/wiutil.h | |||
@@ -9,7 +9,6 @@ extern "C" { | |||
9 | // constants | 9 | // constants |
10 | 10 | ||
11 | #define IDNOACTION 0 | 11 | #define IDNOACTION 0 |
12 | #define WIU_MB_OKIGNORECANCELRETRY 0xE | ||
13 | 12 | ||
14 | #define MAX_DARWIN_KEY 73 | 13 | #define MAX_DARWIN_KEY 73 |
15 | #define MAX_DARWIN_COLUMN 255 | 14 | #define MAX_DARWIN_COLUMN 255 |
@@ -37,6 +36,7 @@ typedef enum WIU_MSI_EXECUTE_MESSAGE_TYPE | |||
37 | WIU_MSI_EXECUTE_MESSAGE_ERROR, | 36 | WIU_MSI_EXECUTE_MESSAGE_ERROR, |
38 | WIU_MSI_EXECUTE_MESSAGE_MSI_MESSAGE, | 37 | WIU_MSI_EXECUTE_MESSAGE_MSI_MESSAGE, |
39 | WIU_MSI_EXECUTE_MESSAGE_MSI_FILES_IN_USE, | 38 | WIU_MSI_EXECUTE_MESSAGE_MSI_FILES_IN_USE, |
39 | WIU_MSI_EXECUTE_MESSAGE_MSI_RM_FILES_IN_USE, | ||
40 | } WIU_MSI_EXECUTE_MESSAGE_TYPE; | 40 | } WIU_MSI_EXECUTE_MESSAGE_TYPE; |
41 | 41 | ||
42 | 42 | ||
@@ -45,7 +45,7 @@ typedef enum WIU_MSI_EXECUTE_MESSAGE_TYPE | |||
45 | typedef struct _WIU_MSI_EXECUTE_MESSAGE | 45 | typedef struct _WIU_MSI_EXECUTE_MESSAGE |
46 | { | 46 | { |
47 | WIU_MSI_EXECUTE_MESSAGE_TYPE type; | 47 | WIU_MSI_EXECUTE_MESSAGE_TYPE type; |
48 | DWORD dwAllowedResults; | 48 | DWORD dwUIHint; |
49 | 49 | ||
50 | DWORD cData; | 50 | DWORD cData; |
51 | LPCWSTR* rgwzData; | 51 | LPCWSTR* rgwzData; |
diff --git a/src/libs/dutil/WixToolset.DUtil/wiutil.cpp b/src/libs/dutil/WixToolset.DUtil/wiutil.cpp index 7414ac42..da7cffe7 100644 --- a/src/libs/dutil/WixToolset.DUtil/wiutil.cpp +++ b/src/libs/dutil/WixToolset.DUtil/wiutil.cpp | |||
@@ -113,6 +113,7 @@ static INT SendErrorMessage( | |||
113 | ); | 113 | ); |
114 | static INT SendFilesInUseMessage( | 114 | static INT SendFilesInUseMessage( |
115 | __in WIU_MSI_EXECUTE_CONTEXT* pContext, | 115 | __in WIU_MSI_EXECUTE_CONTEXT* pContext, |
116 | __in UINT uiFlags, | ||
116 | __in_opt MSIHANDLE hRecord, | 117 | __in_opt MSIHANDLE hRecord, |
117 | __in BOOL fRestartManagerRequest | 118 | __in BOOL fRestartManagerRequest |
118 | ); | 119 | ); |
@@ -1161,7 +1162,7 @@ Trace(REPORT_STANDARD, "MSI install[%x]: %ls", pContext->dwCurrentProgressIndex, | |||
1161 | 1162 | ||
1162 | case INSTALLMESSAGE_FILESINUSE: | 1163 | case INSTALLMESSAGE_FILESINUSE: |
1163 | case INSTALLMESSAGE_RMFILESINUSE: | 1164 | case INSTALLMESSAGE_RMFILESINUSE: |
1164 | nResult = SendFilesInUseMessage(pContext, hRecord, INSTALLMESSAGE_RMFILESINUSE == mt); | 1165 | nResult = SendFilesInUseMessage(pContext, uiFlags, hRecord, INSTALLMESSAGE_RMFILESINUSE == mt); |
1165 | break; | 1166 | break; |
1166 | 1167 | ||
1167 | /* | 1168 | /* |
@@ -1401,7 +1402,7 @@ static INT SendMsiMessage( | |||
1401 | InitializeMessageData(hRecord, &rgsczData, &cData); | 1402 | InitializeMessageData(hRecord, &rgsczData, &cData); |
1402 | 1403 | ||
1403 | message.type = WIU_MSI_EXECUTE_MESSAGE_MSI_MESSAGE; | 1404 | message.type = WIU_MSI_EXECUTE_MESSAGE_MSI_MESSAGE; |
1404 | message.dwAllowedResults = uiFlags; | 1405 | message.dwUIHint = uiFlags; |
1405 | message.cData = cData; | 1406 | message.cData = cData; |
1406 | message.rgwzData = (LPCWSTR*)rgsczData; | 1407 | message.rgwzData = (LPCWSTR*)rgsczData; |
1407 | message.msiMessage.mt = mt; | 1408 | message.msiMessage.mt = mt; |
@@ -1445,7 +1446,7 @@ static INT SendErrorMessage( | |||
1445 | InitializeMessageData(hRecord, &rgsczData, &cData); | 1446 | InitializeMessageData(hRecord, &rgsczData, &cData); |
1446 | 1447 | ||
1447 | message.type = WIU_MSI_EXECUTE_MESSAGE_ERROR; | 1448 | message.type = WIU_MSI_EXECUTE_MESSAGE_ERROR; |
1448 | message.dwAllowedResults = uiFlags; | 1449 | message.dwUIHint = uiFlags; |
1449 | message.nResultRecommendation = nResult; | 1450 | message.nResultRecommendation = nResult; |
1450 | message.cData = cData; | 1451 | message.cData = cData; |
1451 | message.rgwzData = (LPCWSTR*)rgsczData; | 1452 | message.rgwzData = (LPCWSTR*)rgsczData; |
@@ -1459,8 +1460,9 @@ static INT SendErrorMessage( | |||
1459 | 1460 | ||
1460 | static INT SendFilesInUseMessage( | 1461 | static INT SendFilesInUseMessage( |
1461 | __in WIU_MSI_EXECUTE_CONTEXT* pContext, | 1462 | __in WIU_MSI_EXECUTE_CONTEXT* pContext, |
1463 | __in UINT uiFlags, | ||
1462 | __in_opt MSIHANDLE hRecord, | 1464 | __in_opt MSIHANDLE hRecord, |
1463 | __in BOOL /*fRestartManagerRequest*/ | 1465 | __in BOOL fRestartManagerRequest |
1464 | ) | 1466 | ) |
1465 | { | 1467 | { |
1466 | INT nResult = IDNOACTION; | 1468 | INT nResult = IDNOACTION; |
@@ -1470,8 +1472,8 @@ static INT SendFilesInUseMessage( | |||
1470 | 1472 | ||
1471 | InitializeMessageData(hRecord, &rgsczData, &cData); | 1473 | InitializeMessageData(hRecord, &rgsczData, &cData); |
1472 | 1474 | ||
1473 | message.type = WIU_MSI_EXECUTE_MESSAGE_MSI_FILES_IN_USE; | 1475 | message.type = fRestartManagerRequest ? WIU_MSI_EXECUTE_MESSAGE_MSI_RM_FILES_IN_USE : WIU_MSI_EXECUTE_MESSAGE_MSI_FILES_IN_USE; |
1474 | message.dwAllowedResults = WIU_MB_OKIGNORECANCELRETRY; | 1476 | message.dwUIHint = uiFlags; |
1475 | message.cData = cData; | 1477 | message.cData = cData; |
1476 | message.rgwzData = (LPCWSTR*)rgsczData; | 1478 | message.rgwzData = (LPCWSTR*)rgsczData; |
1477 | message.msiFilesInUse.cFiles = message.cData; // point the files in use information to the message record information. | 1479 | message.msiFilesInUse.cFiles = message.cData; // point the files in use information to the message record information. |
@@ -1527,7 +1529,7 @@ static INT SendProgressUpdate( | |||
1527 | #endif | 1529 | #endif |
1528 | 1530 | ||
1529 | message.type = WIU_MSI_EXECUTE_MESSAGE_PROGRESS; | 1531 | message.type = WIU_MSI_EXECUTE_MESSAGE_PROGRESS; |
1530 | message.dwAllowedResults = MB_OKCANCEL; | 1532 | message.dwUIHint = MB_OKCANCEL; |
1531 | message.progress.dwPercentage = dwPercentage; | 1533 | message.progress.dwPercentage = dwPercentage; |
1532 | nResult = pContext->pfnMessageHandler(&message, pContext->pvContext); | 1534 | nResult = pContext->pfnMessageHandler(&message, pContext->pvContext); |
1533 | 1535 | ||