aboutsummaryrefslogtreecommitdiff
path: root/src/bextutil/BextBundleExtensionEngine.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/bextutil/BextBundleExtensionEngine.cpp')
-rw-r--r--src/bextutil/BextBundleExtensionEngine.cpp26
1 files changed, 26 insertions, 0 deletions
diff --git a/src/bextutil/BextBundleExtensionEngine.cpp b/src/bextutil/BextBundleExtensionEngine.cpp
index 983782a9..9906a7f5 100644
--- a/src/bextutil/BextBundleExtensionEngine.cpp
+++ b/src/bextutil/BextBundleExtensionEngine.cpp
@@ -280,6 +280,32 @@ public: // IBundleExtensionEngine
280 return m_pfnBundleExtensionEngineProc(BUNDLE_EXTENSION_ENGINE_MESSAGE_SETVARIABLEVERSION, &args, &results, m_pvBundleExtensionEngineProcContext); 280 return m_pfnBundleExtensionEngineProc(BUNDLE_EXTENSION_ENGINE_MESSAGE_SETVARIABLEVERSION, &args, &results, m_pvBundleExtensionEngineProcContext);
281 } 281 }
282 282
283 virtual STDMETHODIMP CompareVersions(
284 __in_z LPCWSTR wzVersion1,
285 __in_z LPCWSTR wzVersion2,
286 __out int* pnResult
287 )
288 {
289 HRESULT hr = S_OK;
290 BUNDLE_EXTENSION_ENGINE_COMPAREVERSIONS_ARGS args = { };
291 BUNDLE_EXTENSION_ENGINE_COMPAREVERSIONS_RESULTS results = { };
292
293 ExitOnNull(pnResult, hr, E_INVALIDARG, "pnResult is required");
294
295 args.cbSize = sizeof(args);
296 args.wzVersion1 = wzVersion1;
297 args.wzVersion2 = wzVersion2;
298
299 results.cbSize = sizeof(results);
300
301 hr = m_pfnBundleExtensionEngineProc(BUNDLE_EXTENSION_ENGINE_MESSAGE_COMPAREVERSIONS, &args, &results, m_pvBundleExtensionEngineProcContext);
302
303 *pnResult = results.nResult;
304
305 LExit:
306 return hr;
307 }
308
283public: 309public:
284 CBextBundleExtensionEngine( 310 CBextBundleExtensionEngine(
285 __in PFN_BUNDLE_EXTENSION_ENGINE_PROC pfnBundleExtensionEngineProc, 311 __in PFN_BUNDLE_EXTENSION_ENGINE_PROC pfnBundleExtensionEngineProc,