summaryrefslogtreecommitdiff
path: root/src/ext/Bal/test/examples/TestEngine/TestEngine.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/ext/Bal/test/examples/TestEngine/TestEngine.cpp')
-rw-r--r--src/ext/Bal/test/examples/TestEngine/TestEngine.cpp16
1 files changed, 12 insertions, 4 deletions
diff --git a/src/ext/Bal/test/examples/TestEngine/TestEngine.cpp b/src/ext/Bal/test/examples/TestEngine/TestEngine.cpp
index 4c7ec1c3..5c6ed398 100644
--- a/src/ext/Bal/test/examples/TestEngine/TestEngine.cpp
+++ b/src/ext/Bal/test/examples/TestEngine/TestEngine.cpp
@@ -147,10 +147,18 @@ HRESULT TestEngine::SimulateQuit(
147 return BAEngineQuit(&args, &results); 147 return BAEngineQuit(&args, &results);
148} 148}
149 149
150void TestEngine::UnloadBA() 150void TestEngine::UnloadBA(
151 __in BOOL fReload
152 )
151{ 153{
152 PFN_BOOTSTRAPPER_APPLICATION_DESTROY pfnDestroy = NULL; 154 PFN_BOOTSTRAPPER_APPLICATION_DESTROY pfnDestroy = NULL;
153 BOOL fDisableUnloading = m_pCreateResults && m_pCreateResults->fDisableUnloading; 155 BOOTSTRAPPER_DESTROY_ARGS args = { };
156 BOOTSTRAPPER_DESTROY_RESULTS results = { };
157
158 args.cbSize = sizeof(args);
159 args.fReload = fReload;
160
161 results.cbSize = sizeof(results);
154 162
155 ReleaseNullMem(m_pCreateResults); 163 ReleaseNullMem(m_pCreateResults);
156 164
@@ -158,12 +166,12 @@ void TestEngine::UnloadBA()
158 166
159 if (pfnDestroy) 167 if (pfnDestroy)
160 { 168 {
161 pfnDestroy(); 169 pfnDestroy(&args, &results);
162 } 170 }
163 171
164 if (m_hBAModule) 172 if (m_hBAModule)
165 { 173 {
166 if (!fDisableUnloading) 174 if (!results.fDisableUnloading)
167 { 175 {
168 ::FreeLibrary(m_hBAModule); 176 ::FreeLibrary(m_hBAModule);
169 } 177 }