diff options
Diffstat (limited to 'src/wixstdba/wixstdba.cpp')
-rw-r--r-- | src/wixstdba/wixstdba.cpp | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/src/wixstdba/wixstdba.cpp b/src/wixstdba/wixstdba.cpp index f47c1f4e..2767c74e 100644 --- a/src/wixstdba/wixstdba.cpp +++ b/src/wixstdba/wixstdba.cpp | |||
@@ -3,6 +3,7 @@ | |||
3 | #include "precomp.h" | 3 | #include "precomp.h" |
4 | 4 | ||
5 | static HINSTANCE vhInstance = NULL; | 5 | static HINSTANCE vhInstance = NULL; |
6 | static IBootstrapperApplication* vpApplication = NULL; | ||
6 | 7 | ||
7 | extern "C" BOOL WINAPI DllMain( | 8 | extern "C" BOOL WINAPI DllMain( |
8 | IN HINSTANCE hInstance, | 9 | IN HINSTANCE hInstance, |
@@ -37,7 +38,7 @@ extern "C" HRESULT WINAPI BootstrapperApplicationCreate( | |||
37 | hr = BalInitializeFromCreateArgs(pArgs, &pEngine); | 38 | hr = BalInitializeFromCreateArgs(pArgs, &pEngine); |
38 | ExitOnFailure(hr, "Failed to initialize Bal."); | 39 | ExitOnFailure(hr, "Failed to initialize Bal."); |
39 | 40 | ||
40 | hr = CreateBootstrapperApplication(vhInstance, FALSE, S_OK, pEngine, pArgs, pResults); | 41 | hr = CreateBootstrapperApplication(vhInstance, FALSE, S_OK, pEngine, pArgs, pResults, &vpApplication); |
41 | BalExitOnFailure(hr, "Failed to create bootstrapper application interface."); | 42 | BalExitOnFailure(hr, "Failed to create bootstrapper application interface."); |
42 | 43 | ||
43 | LExit: | 44 | LExit: |
@@ -49,6 +50,7 @@ LExit: | |||
49 | 50 | ||
50 | extern "C" void WINAPI BootstrapperApplicationDestroy() | 51 | extern "C" void WINAPI BootstrapperApplicationDestroy() |
51 | { | 52 | { |
53 | ReleaseNullObject(vpApplication); | ||
52 | BalUninitialize(); | 54 | BalUninitialize(); |
53 | } | 55 | } |
54 | 56 | ||
@@ -64,7 +66,7 @@ extern "C" HRESULT WINAPI MbaPrereqBootstrapperApplicationCreate( | |||
64 | 66 | ||
65 | BalInitialize(pEngine); | 67 | BalInitialize(pEngine); |
66 | 68 | ||
67 | hr = CreateBootstrapperApplication(vhInstance, TRUE, hrHostInitialization, pEngine, pArgs, pResults); | 69 | hr = CreateBootstrapperApplication(vhInstance, TRUE, hrHostInitialization, pEngine, pArgs, pResults, &vpApplication); |
68 | BalExitOnFailure(hr, "Failed to create managed prerequisite bootstrapper application interface."); | 70 | BalExitOnFailure(hr, "Failed to create managed prerequisite bootstrapper application interface."); |
69 | 71 | ||
70 | LExit: | 72 | LExit: |
@@ -74,5 +76,6 @@ LExit: | |||
74 | 76 | ||
75 | extern "C" void WINAPI MbaPrereqBootstrapperApplicationDestroy() | 77 | extern "C" void WINAPI MbaPrereqBootstrapperApplicationDestroy() |
76 | { | 78 | { |
79 | ReleaseNullObject(vpApplication); | ||
77 | BalUninitialize(); | 80 | BalUninitialize(); |
78 | } | 81 | } |