aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRob Mensching <rob@firegiant.com>2021-04-14 12:18:39 -0700
committerSean Hall <r.sean.hall@gmail.com>2021-04-14 14:52:06 -0500
commit6c740c1070475a8a894393a186cdcdd8a8a81112 (patch)
tree5c1c5976ae262356f6f16058d0c1f0dab843b830
parent732e719b6888895ac01aa02c2a86d0beb37ec74d (diff)
downloadwix-6c740c1070475a8a894393a186cdcdd8a8a81112.tar.gz
wix-6c740c1070475a8a894393a186cdcdd8a8a81112.tar.bz2
wix-6c740c1070475a8a894393a186cdcdd8a8a81112.zip
Allow BA to update feed source
Fixes wixtoolset/issues#5568
-rw-r--r--src/WixToolset.Mba.Core/Engine.cs6
-rw-r--r--src/WixToolset.Mba.Core/IBootstrapperEngine.cs8
-rw-r--r--src/WixToolset.Mba.Core/IEngine.cs6
-rw-r--r--src/balutil/BalBootstrapperEngine.cpp15
-rw-r--r--src/balutil/inc/IBootstrapperEngine.h4
5 files changed, 39 insertions, 0 deletions
diff --git a/src/WixToolset.Mba.Core/Engine.cs b/src/WixToolset.Mba.Core/Engine.cs
index d5c43a53..e07ecd8b 100644
--- a/src/WixToolset.Mba.Core/Engine.cs
+++ b/src/WixToolset.Mba.Core/Engine.cs
@@ -247,6 +247,12 @@ namespace WixToolset.Mba.Core
247 } 247 }
248 248
249 /// <inheritdoc/> 249 /// <inheritdoc/>
250 public void SetUpdateSource(string url)
251 {
252 this.engine.SetUpdateSource(url);
253 }
254
255 /// <inheritdoc/>
250 public void SetLocalSource(string packageOrContainerId, string payloadId, string path) 256 public void SetLocalSource(string packageOrContainerId, string payloadId, string path)
251 { 257 {
252 this.engine.SetLocalSource(packageOrContainerId, payloadId, path); 258 this.engine.SetLocalSource(packageOrContainerId, payloadId, path);
diff --git a/src/WixToolset.Mba.Core/IBootstrapperEngine.cs b/src/WixToolset.Mba.Core/IBootstrapperEngine.cs
index af3101dc..78753a42 100644
--- a/src/WixToolset.Mba.Core/IBootstrapperEngine.cs
+++ b/src/WixToolset.Mba.Core/IBootstrapperEngine.cs
@@ -278,6 +278,14 @@ namespace WixToolset.Mba.Core
278 ); 278 );
279 279
280 /// <summary> 280 /// <summary>
281 /// Sets the URL to the update feed.
282 /// </summary>
283 /// <param name="url">URL of the update feed.</param>
284 void SetUpdateSource(
285 [MarshalAs(UnmanagedType.LPWStr)] string url
286 );
287
288 /// <summary>
281 /// See <see cref="IEngine.CompareVersions(string, string)"/>. 289 /// See <see cref="IEngine.CompareVersions(string, string)"/>.
282 /// </summary> 290 /// </summary>
283 /// <param name="wzVersion1"></param> 291 /// <param name="wzVersion1"></param>
diff --git a/src/WixToolset.Mba.Core/IEngine.cs b/src/WixToolset.Mba.Core/IEngine.cs
index 0899ec43..3e636961 100644
--- a/src/WixToolset.Mba.Core/IEngine.cs
+++ b/src/WixToolset.Mba.Core/IEngine.cs
@@ -145,6 +145,12 @@ namespace WixToolset.Mba.Core
145 void SetUpdate(string localSource, string downloadSource, long size, UpdateHashType hashType, byte[] hash); 145 void SetUpdate(string localSource, string downloadSource, long size, UpdateHashType hashType, byte[] hash);
146 146
147 /// <summary> 147 /// <summary>
148 /// Sets the URL to the update feed.
149 /// </summary>
150 /// <param name="url">URL of the update feed.</param>
151 void SetUpdateSource(string url);
152
153 /// <summary>
148 /// Set the local source for a package or container. 154 /// Set the local source for a package or container.
149 /// </summary> 155 /// </summary>
150 /// <param name="packageOrContainerId">The id that uniquely identifies the package or container.</param> 156 /// <param name="packageOrContainerId">The id that uniquely identifies the package or container.</param>
diff --git a/src/balutil/BalBootstrapperEngine.cpp b/src/balutil/BalBootstrapperEngine.cpp
index 8e40f7ae..dda98cb9 100644
--- a/src/balutil/BalBootstrapperEngine.cpp
+++ b/src/balutil/BalBootstrapperEngine.cpp
@@ -535,6 +535,21 @@ public: // IBootstrapperEngine
535 return m_pfnBAEngineProc(BOOTSTRAPPER_ENGINE_MESSAGE_LAUNCHAPPROVEDEXE, &args, &results, m_pvBAEngineProcContext); 535 return m_pfnBAEngineProc(BOOTSTRAPPER_ENGINE_MESSAGE_LAUNCHAPPROVEDEXE, &args, &results, m_pvBAEngineProcContext);
536 } 536 }
537 537
538 virtual STDMETHODIMP SetUpdateSource(
539 __in_z LPCWSTR wzUrl
540 )
541 {
542 BAENGINE_SETUPDATESOURCE_ARGS args = { };
543 BAENGINE_SETUPDATESOURCE_RESULTS results = { };
544
545 args.cbSize = sizeof(args);
546 args.wzUrl = wzUrl;
547
548 results.cbSize = sizeof(results);
549
550 return m_pfnBAEngineProc(BOOTSTRAPPER_ENGINE_MESSAGE_SETUPDATESOURCE, &args, &results, m_pvBAEngineProcContext);
551 }
552
538 virtual STDMETHODIMP CompareVersions( 553 virtual STDMETHODIMP CompareVersions(
539 __in_z LPCWSTR wzVersion1, 554 __in_z LPCWSTR wzVersion1,
540 __in_z LPCWSTR wzVersion2, 555 __in_z LPCWSTR wzVersion2,
diff --git a/src/balutil/inc/IBootstrapperEngine.h b/src/balutil/inc/IBootstrapperEngine.h
index cd89a9f0..af6379f4 100644
--- a/src/balutil/inc/IBootstrapperEngine.h
+++ b/src/balutil/inc/IBootstrapperEngine.h
@@ -128,6 +128,10 @@ DECLARE_INTERFACE_IID_(IBootstrapperEngine, IUnknown, "6480D616-27A0-44D7-905B-8
128 __in DWORD dwWaitForInputIdleTimeout 128 __in DWORD dwWaitForInputIdleTimeout
129 ) = 0; 129 ) = 0;
130 130
131 STDMETHOD(SetUpdateSource)(
132 __in_z LPCWSTR wzUrl
133 ) = 0;
134
131 STDMETHOD(CompareVersions)( 135 STDMETHOD(CompareVersions)(
132 __in_z LPCWSTR wzVersion1, 136 __in_z LPCWSTR wzVersion1,
133 __in_z LPCWSTR wzVersion2, 137 __in_z LPCWSTR wzVersion2,