summaryrefslogtreecommitdiff
path: root/src/wix/WixToolset.BuildTasks/ToolsetTask.cs
diff options
context:
space:
mode:
Diffstat (limited to 'src/wix/WixToolset.BuildTasks/ToolsetTask.cs')
-rw-r--r--src/wix/WixToolset.BuildTasks/ToolsetTask.cs23
1 files changed, 11 insertions, 12 deletions
diff --git a/src/wix/WixToolset.BuildTasks/ToolsetTask.cs b/src/wix/WixToolset.BuildTasks/ToolsetTask.cs
index 05095fb8..7d4a7687 100644
--- a/src/wix/WixToolset.BuildTasks/ToolsetTask.cs
+++ b/src/wix/WixToolset.BuildTasks/ToolsetTask.cs
@@ -9,10 +9,11 @@ namespace WixToolset.BuildTasks
9 9
10 public abstract partial class ToolsetTask : ToolTask 10 public abstract partial class ToolsetTask : ToolTask
11 { 11 {
12#if NETFRAMEWORK 12#if NETCOREAPP
13 private static readonly string ThisDllPath = new Uri(typeof(ToolsetTask).Assembly.CodeBase).AbsolutePath; 13 private static readonly string DotnetFullPath = Environment.GetEnvironmentVariable("DOTNET_HOST_PATH") ?? "dotnet";
14#else
15 private static readonly string ThisDllPath = typeof(ToolsetTask).Assembly.Location; 14 private static readonly string ThisDllPath = typeof(ToolsetTask).Assembly.Location;
15#else
16 private static readonly string ThisDllPath = new Uri(typeof(ToolsetTask).Assembly.CodeBase).AbsolutePath;
16#endif 17#endif
17 18
18 /// <summary> 19 /// <summary>
@@ -84,19 +85,19 @@ namespace WixToolset.BuildTasks
84 /// </remarks> 85 /// </remarks>
85 protected sealed override string GenerateFullPathToTool() 86 protected sealed override string GenerateFullPathToTool()
86 { 87 {
87#if !NETCOREAPP 88#if NETCOREAPP
89 if (IsSelfExecutable(this.DefaultToolFullPath, out var toolFullPath))
90 {
91 return toolFullPath;
92 }
93 return DotnetFullPath;
94#else
88 if (!this.RunAsSeparateProcess) 95 if (!this.RunAsSeparateProcess)
89 { 96 {
90 // We need to return a path that exists, so if we're not actually going to run the tool then just return this dll path. 97 // We need to return a path that exists, so if we're not actually going to run the tool then just return this dll path.
91 return ThisDllPath; 98 return ThisDllPath;
92 } 99 }
93 return this.DefaultToolFullPath; 100 return this.DefaultToolFullPath;
94#else
95 if (IsSelfExecutable(this.DefaultToolFullPath, out var toolFullPath))
96 {
97 return toolFullPath;
98 }
99 return DotnetFullPath;
100#endif 101#endif
101 } 102 }
102 103
@@ -124,8 +125,6 @@ namespace WixToolset.BuildTasks
124 } 125 }
125 126
126#if NETCOREAPP 127#if NETCOREAPP
127 private static readonly string DotnetFullPath = Environment.GetEnvironmentVariable("DOTNET_HOST_PATH") ?? "dotnet";
128
129 protected override string GenerateCommandLineCommands() 128 protected override string GenerateCommandLineCommands()
130 { 129 {
131 if (IsSelfExecutable(this.ToolFullPath, out var toolFullPath)) 130 if (IsSelfExecutable(this.ToolFullPath, out var toolFullPath))