Alexandre Julliard : kernel32: Create the syswow64 directory if necessary.

Alexandre Julliard julliard at winehq.org
Fri Oct 23 10:18:58 CDT 2009


Module: wine
Branch: master
Commit: c9689897d9ea8152d8fcdd1f6f39fe7f8f771213
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=c9689897d9ea8152d8fcdd1f6f39fe7f8f771213

Author: Alexandre Julliard <julliard at winehq.org>
Date:   Thu Oct 22 19:52:12 2009 +0200

kernel32: Create the syswow64 directory if necessary.

---

 dlls/kernel32/process.c |   17 ++++++++++-------
 1 files changed, 10 insertions(+), 7 deletions(-)

diff --git a/dlls/kernel32/process.c b/dlls/kernel32/process.c
index f867cc9..c2e8e22 100644
--- a/dlls/kernel32/process.c
+++ b/dlls/kernel32/process.c
@@ -863,6 +863,13 @@ static void init_windows_dirs(void)
         DIR_System = buffer;
     }
 
+    if (!CreateDirectoryW( DIR_Windows, NULL ) && GetLastError() != ERROR_ALREADY_EXISTS)
+        ERR( "directory %s could not be created, error %u\n",
+             debugstr_w(DIR_Windows), GetLastError() );
+    if (!CreateDirectoryW( DIR_System, NULL ) && GetLastError() != ERROR_ALREADY_EXISTS)
+        ERR( "directory %s could not be created, error %u\n",
+             debugstr_w(DIR_System), GetLastError() );
+
 #ifndef _WIN64  /* SysWow64 is always defined on 64-bit */
     if (is_wow64)
 #endif
@@ -872,15 +879,11 @@ static void init_windows_dirs(void)
         memcpy( buffer, DIR_Windows, len * sizeof(WCHAR) );
         memcpy( buffer + len, default_syswow64W, sizeof(default_syswow64W) );
         DIR_SysWow64 = buffer;
+        if (!CreateDirectoryW( DIR_SysWow64, NULL ) && GetLastError() != ERROR_ALREADY_EXISTS)
+            ERR( "directory %s could not be created, error %u\n",
+                 debugstr_w(DIR_SysWow64), GetLastError() );
     }
 
-    if (!CreateDirectoryW( DIR_Windows, NULL ) && GetLastError() != ERROR_ALREADY_EXISTS)
-        ERR( "directory %s could not be created, error %u\n",
-             debugstr_w(DIR_Windows), GetLastError() );
-    if (!CreateDirectoryW( DIR_System, NULL ) && GetLastError() != ERROR_ALREADY_EXISTS)
-        ERR( "directory %s could not be created, error %u\n",
-             debugstr_w(DIR_System), GetLastError() );
-
     TRACE_(file)( "WindowsDir = %s\n", debugstr_w(DIR_Windows) );
     TRACE_(file)( "SystemDir  = %s\n", debugstr_w(DIR_System) );
 




More information about the wine-cvs mailing list