winsdk: Fix error when installing from syswow64
authorLenny Komow <lenny@lunarg.com>
Thu, 7 Jul 2016 22:45:34 +0000 (16:45 -0600)
committerLenny Komow <lenny@lunarg.com>
Thu, 7 Jul 2016 22:45:47 +0000 (16:45 -0600)
windowsRuntimeInstaller/ConfigLayersAndVulkanDLL.ps1

index 341df5f..3eadbfd 100644 (file)
@@ -359,6 +359,7 @@ function UpdateVulkanSysFolder([string]$dir, [int]$writeSdkName)
 \r
 # We only care about SYSWOW64 if we're targeting a 64-bit OS\r
 if ($ossize -eq 64) {\r
+\r
     # Update the SYSWOW64 Vulkan DLLS/EXEs\r
     WriteToLog "Calling UpdateVulkanSysFolder $winfolder\SYSWOW64 0"\r
     UpdateVulkanSysFolder $winfolder\SYSWOW64 0\r
@@ -368,12 +369,26 @@ if ($ossize -eq 64) {
     }\r
 }\r
 \r
-# Update the SYSTEM32 Vulkan DLLS/EXEs\r
-WriteToLog "Calling UpdateVulkanSysFolder $winfolder\SYSTEM32 1"\r
-UpdateVulkanSysFolder $winfolder\SYSTEM32 1\r
-if (!$?) {\r
-    WriteToLog "Error: Calling UpdateVulkanSysFolder for all OS"\r
-    setScriptReturnValue(80)\r
+# If this is a 64 bit OS and a 32 bit powershell\r
+if (($ossize -eq 64 ) -and ([IntPtr]::size -eq 4)) {\r
+\r
+    # Update the SYSTEM32 Vulkan DLLS/EXEs\r
+    WriteToLog "Calling UpdateVulkanSysFolder $winfolder\SYSTEM32 1"\r
+    UpdateVulkanSysFolder $winfolder\SYSNATIVE 1\r
+    if (!$?) {\r
+        WriteToLog "Error: Calling UpdateVulkanSysFolder for all OS"\r
+        setScriptReturnValue(80)\r
+    }\r
+\r
+} else {\r
+\r
+    # Update the SYSTEM32 Vulkan DLLS/EXEs\r
+    WriteToLog "Calling UpdateVulkanSysFolder $winfolder\SYSTEM32 1"\r
+    UpdateVulkanSysFolder $winfolder\SYSTEM32 1\r
+    if (!$?) {\r
+        WriteToLog "Error: Calling UpdateVulkanSysFolder for all OS"\r
+        setScriptReturnValue(81)\r
+    }\r
 }\r
 \r
 # Create an array of vulkan sdk install dirs\r