aboutsummaryrefslogtreecommitdiff
path: root/src/WixToolset.Mba.Core
diff options
context:
space:
mode:
authorSean Hall <r.sean.hall@gmail.com>2020-04-28 11:17:29 +1000
committerSean Hall <r.sean.hall@gmail.com>2020-04-29 19:44:04 +1000
commit1e7800b811b658659c8487bf2ccb541fdd6bd1be (patch)
tree3317b31ae0f259b82a000e61016395a900d70de7 /src/WixToolset.Mba.Core
parentefbe40802d13867ab43f4d7808e1b91052b18ca2 (diff)
downloadwix-1e7800b811b658659c8487bf2ccb541fdd6bd1be.tar.gz
wix-1e7800b811b658659c8487bf2ccb541fdd6bd1be.tar.bz2
wix-1e7800b811b658659c8487bf2ccb541fdd6bd1be.zip
Fix bugs around mbanative's InitializeFromCreateArgs.
Diffstat (limited to 'src/WixToolset.Mba.Core')
-rw-r--r--src/WixToolset.Mba.Core/IBootstrapperApplicationFactory.cs17
1 files changed, 9 insertions, 8 deletions
diff --git a/src/WixToolset.Mba.Core/IBootstrapperApplicationFactory.cs b/src/WixToolset.Mba.Core/IBootstrapperApplicationFactory.cs
index d3087717..b9c62a99 100644
--- a/src/WixToolset.Mba.Core/IBootstrapperApplicationFactory.cs
+++ b/src/WixToolset.Mba.Core/IBootstrapperApplicationFactory.cs
@@ -23,19 +23,20 @@ namespace WixToolset.Mba.Core
23 [GeneratedCodeAttribute("WixToolset.Bootstrapper.InteropCodeGenerator", "1.0.0.0")] 23 [GeneratedCodeAttribute("WixToolset.Bootstrapper.InteropCodeGenerator", "1.0.0.0")]
24 public struct Command 24 public struct Command
25 { 25 {
26 // Strings must be declared as pointers so that Marshaling doesn't free them.
26 [MarshalAs(UnmanagedType.I4)] internal int cbSize; 27 [MarshalAs(UnmanagedType.I4)] internal int cbSize;
27 [MarshalAs(UnmanagedType.U4)] private readonly LaunchAction action; 28 [MarshalAs(UnmanagedType.U4)] private readonly LaunchAction action;
28 [MarshalAs(UnmanagedType.U4)] private readonly Display display; 29 [MarshalAs(UnmanagedType.U4)] private readonly Display display;
29 [MarshalAs(UnmanagedType.U4)] private readonly Restart restart; 30 [MarshalAs(UnmanagedType.U4)] private readonly Restart restart;
30 [MarshalAs(UnmanagedType.LPWStr)] private readonly string wzCommandLine; 31 private readonly IntPtr wzCommandLine;
31 [MarshalAs(UnmanagedType.I4)] private readonly int nCmdShow; 32 [MarshalAs(UnmanagedType.I4)] private readonly int nCmdShow;
32 [MarshalAs(UnmanagedType.U4)] private readonly ResumeType resume; 33 [MarshalAs(UnmanagedType.U4)] private readonly ResumeType resume;
33 private readonly IntPtr hwndSplashScreen; 34 private readonly IntPtr hwndSplashScreen;
34 [MarshalAs(UnmanagedType.I4)] private readonly RelationType relation; 35 [MarshalAs(UnmanagedType.I4)] private readonly RelationType relation;
35 [MarshalAs(UnmanagedType.Bool)] private readonly bool passthrough; 36 [MarshalAs(UnmanagedType.Bool)] private readonly bool passthrough;
36 [MarshalAs(UnmanagedType.LPWStr)] private readonly string wzLayoutDirectory; 37 private readonly IntPtr wzLayoutDirectory;
37 [MarshalAs(UnmanagedType.LPWStr)] private readonly string wzBootstrapperWorkingFolder; 38 private readonly IntPtr wzBootstrapperWorkingFolder;
38 [MarshalAs(UnmanagedType.LPWStr)] private readonly string wzBootstrapperApplicationDataPath; 39 private readonly IntPtr wzBootstrapperApplicationDataPath;
39 40
40 public IBootstrapperCommand GetBootstrapperCommand() 41 public IBootstrapperCommand GetBootstrapperCommand()
41 { 42 {
@@ -43,15 +44,15 @@ namespace WixToolset.Mba.Core
43 this.action, 44 this.action,
44 this.display, 45 this.display,
45 this.restart, 46 this.restart,
46 this.wzCommandLine, 47 Marshal.PtrToStringUni(this.wzCommandLine),
47 this.nCmdShow, 48 this.nCmdShow,
48 this.resume, 49 this.resume,
49 this.hwndSplashScreen, 50 this.hwndSplashScreen,
50 this.relation, 51 this.relation,
51 this.passthrough, 52 this.passthrough,
52 this.wzLayoutDirectory, 53 Marshal.PtrToStringUni(this.wzLayoutDirectory),
53 this.wzBootstrapperWorkingFolder, 54 Marshal.PtrToStringUni(this.wzBootstrapperWorkingFolder),
54 this.wzBootstrapperApplicationDataPath); 55 Marshal.PtrToStringUni(this.wzBootstrapperApplicationDataPath));
55 } 56 }
56 } 57 }
57 58