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 | } |
