diff options
| author | Sean Hall <r.sean.hall@gmail.com> | 2020-03-29 19:14:06 +1000 |
|---|---|---|
| committer | Sean Hall <r.sean.hall@gmail.com> | 2020-03-30 21:40:34 +1000 |
| commit | 0354a00e74492ad8d930c5bf499bc8606e48b1c9 (patch) | |
| tree | 5640d653449287699b4cd08cb6b64fe27c4fa8af /src/engine/engine.cpp | |
| parent | 6ce359752afac0d3d70c2cf5fabd7d92859564ee (diff) | |
| download | wix-0354a00e74492ad8d930c5bf499bc8606e48b1c9.tar.gz wix-0354a00e74492ad8d930c5bf499bc8606e48b1c9.tar.bz2 wix-0354a00e74492ad8d930c5bf499bc8606e48b1c9.zip | |
Add support for BundleExtensions.
Diffstat (limited to 'src/engine/engine.cpp')
| -rw-r--r-- | src/engine/engine.cpp | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/src/engine/engine.cpp b/src/engine/engine.cpp index 341fd471..488dbfe8 100644 --- a/src/engine/engine.cpp +++ b/src/engine/engine.cpp | |||
| @@ -352,6 +352,8 @@ static void UninitializeEngineState( | |||
| 352 | 352 | ||
| 353 | ReleaseHandle(pEngineState->hMessageWindowThread); | 353 | ReleaseHandle(pEngineState->hMessageWindowThread); |
| 354 | 354 | ||
| 355 | BurnExtensionUninitialize(&pEngineState->extensions); | ||
| 356 | |||
| 355 | ::DeleteCriticalSection(&pEngineState->userExperience.csEngineActive); | 357 | ::DeleteCriticalSection(&pEngineState->userExperience.csEngineActive); |
| 356 | UserExperienceUninitialize(&pEngineState->userExperience); | 358 | UserExperienceUninitialize(&pEngineState->userExperience); |
| 357 | 359 | ||
| @@ -493,6 +495,7 @@ static HRESULT RunNormal( | |||
| 493 | HANDLE hPipesCreatedEvent = NULL; | 495 | HANDLE hPipesCreatedEvent = NULL; |
| 494 | BOOL fContinueExecution = TRUE; | 496 | BOOL fContinueExecution = TRUE; |
| 495 | BOOL fReloadApp = FALSE; | 497 | BOOL fReloadApp = FALSE; |
| 498 | BURN_EXTENSION_ENGINE_CONTEXT extensionEngineContext = { }; | ||
| 496 | 499 | ||
| 497 | // Initialize logging. | 500 | // Initialize logging. |
| 498 | hr = LoggingOpen(&pEngineState->log, &pEngineState->variables, pEngineState->command.display, pEngineState->registration.sczDisplayName); | 501 | hr = LoggingOpen(&pEngineState->log, &pEngineState->variables, pEngineState->command.display, pEngineState->registration.sczDisplayName); |
| @@ -537,6 +540,13 @@ static HRESULT RunNormal( | |||
| 537 | ExitOnFailure(hr, "Failed to set layout directory variable to value provided from command-line."); | 540 | ExitOnFailure(hr, "Failed to set layout directory variable to value provided from command-line."); |
| 538 | } | 541 | } |
| 539 | 542 | ||
| 543 | // Setup the extension engine. | ||
| 544 | extensionEngineContext.pEngineState = pEngineState; | ||
| 545 | |||
| 546 | // Load the extensions. | ||
| 547 | hr = BurnExtensionLoad(&pEngineState->extensions, &extensionEngineContext); | ||
| 548 | ExitOnFailure(hr, "Failed to load BundleExtensions."); | ||
| 549 | |||
| 540 | do | 550 | do |
| 541 | { | 551 | { |
| 542 | fReloadApp = FALSE; | 552 | fReloadApp = FALSE; |
| @@ -546,6 +556,8 @@ static HRESULT RunNormal( | |||
| 546 | } while (fReloadApp); | 556 | } while (fReloadApp); |
| 547 | 557 | ||
| 548 | LExit: | 558 | LExit: |
| 559 | BurnExtensionUnload(&pEngineState->extensions); | ||
| 560 | |||
| 549 | // If the message window is still around, close it. | 561 | // If the message window is still around, close it. |
| 550 | UiCloseMessageWindow(pEngineState); | 562 | UiCloseMessageWindow(pEngineState); |
| 551 | 563 | ||
