aboutsummaryrefslogtreecommitdiff
path: root/src/engine/EngineForApplication.cpp
diff options
context:
space:
mode:
authorSean Hall <r.sean.hall@gmail.com>2020-05-21 14:13:16 +1000
committerSean Hall <r.sean.hall@gmail.com>2020-05-21 14:18:40 +1000
commit513286d4798572cc82a78554ef15ef2fe79f407e (patch)
tree3960b579a914c843f56c9045c59d194162d0a9d2 /src/engine/EngineForApplication.cpp
parentc903a96bd8d61a375448e1a6ad7b40bab8cb24c4 (diff)
downloadwix-513286d4798572cc82a78554ef15ef2fe79f407e.tar.gz
wix-513286d4798572cc82a78554ef15ef2fe79f407e.tar.bz2
wix-513286d4798572cc82a78554ef15ef2fe79f407e.zip
WIXBUG:5980 Fix bugs around INSTALLUILEVEL_SOURCERESONLY.
Apply requires a valid hWnd since otherwise a source resolution prompt could hang the bundle. Burn now defaults to INSTALLUILEVEL_NONE by itself if the bundle is not showing UI.
Diffstat (limited to 'src/engine/EngineForApplication.cpp')
-rw-r--r--src/engine/EngineForApplication.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/engine/EngineForApplication.cpp b/src/engine/EngineForApplication.cpp
index c3600c7b..e559b438 100644
--- a/src/engine/EngineForApplication.cpp
+++ b/src/engine/EngineForApplication.cpp
@@ -709,6 +709,12 @@ static HRESULT BAEngineApply(
709{ 709{
710 HRESULT hr = S_OK; 710 HRESULT hr = S_OK;
711 711
712 ExitOnNull(pArgs->hwndParent, hr, E_INVALIDARG, "BA passed NULL hwndParent to Apply.");
713 if (!::IsWindow(pArgs->hwndParent))
714 {
715 ExitOnFailure(hr = E_INVALIDARG, "BA passed invalid hwndParent to Apply.");
716 }
717
712 if (!::PostThreadMessageW(pContext->dwThreadId, WM_BURN_APPLY, 0, reinterpret_cast<LPARAM>(pArgs->hwndParent))) 718 if (!::PostThreadMessageW(pContext->dwThreadId, WM_BURN_APPLY, 0, reinterpret_cast<LPARAM>(pArgs->hwndParent)))
713 { 719 {
714 ExitWithLastError(hr, "Failed to post apply message."); 720 ExitWithLastError(hr, "Failed to post apply message.");