Fix kernel/process tests

Francois Gouget fgouget at free.fr
Tue Dec 17 21:19:41 CST 2002


On Win9x lpTitle and STARTUPINFO.lpDesktop and STARTUPINFO.lpTitle are
set to NULL, but on NT platforms lpDesktop is a string identifying the
current desktop and lpTitle is the executable's name.

Fortunately all we need to do to take this difference into account is
make sure that the parent and child have the same value.

Changelog:

 * dlls/kernel/tests/process.c

   #ifdef-out decodeW since it is not used yet
   Fix the lpDesktop and lpTitle checks on NT platforms


Index: dlls/kernel/tests/process.c
===================================================================
RCS file: /home/wine/wine/dlls/kernel/tests/process.c,v
retrieving revision 1.6
diff -u -r1.6 process.c
--- dlls/kernel/tests/process.c	18 Dec 2002 02:22:51 -0000	1.6
+++ dlls/kernel/tests/process.c	18 Dec 2002 02:45:08 -0000
@@ -106,6 +106,10 @@
     return ptr;
 }

+#if 0
+/* This will be needed to decode Unicode strings saved by the child process
+ * when we test Unicode functions.
+ */
 static WCHAR*   decodeW(const char* str)
 {
     size_t      len;
@@ -123,6 +127,7 @@
     ptr[len] = '\0';
     return ptr;
 }
+#endif

 /******************************************************************
  *		init
@@ -351,7 +356,7 @@
 {
     char                buffer[MAX_PATH];
     PROCESS_INFORMATION	info;
-    STARTUPINFOA	startup;
+    STARTUPINFOA	startup,si;

     /* let's start simplistic */
     memset(&startup, 0, sizeof(startup));
@@ -367,9 +372,10 @@
     /* child process has changed result file, so let profile functions know about it */
     WritePrivateProfileStringA(NULL, NULL, NULL, resfile);

+    GetStartupInfoA(&si);
     okChildInt("StartupInfoA", "cb", startup.cb);
-    okChildString("StartupInfoA", "lpDesktop", startup.lpDesktop);
-    okChildString("StartupInfoA", "lpTitle", startup.lpTitle);
+    okChildString("StartupInfoA", "lpDesktop", si.lpDesktop);
+    okChildString("StartupInfoA", "lpTitle", si.lpTitle);
     okChildInt("StartupInfoA", "dwX", startup.dwX);
     okChildInt("StartupInfoA", "dwY", startup.dwY);
     okChildInt("StartupInfoA", "dwXSize", startup.dwXSize);
@@ -444,7 +450,7 @@
     WritePrivateProfileStringA(NULL, NULL, NULL, resfile);

     okChildInt("StartupInfoA", "cb", startup.cb);
-    okChildString("StartupInfoA", "lpDesktop", startup.lpDesktop);
+    okChildString("StartupInfoA", "lpDesktop", si.lpDesktop);
     okChildString("StartupInfoA", "lpTitle", startup.lpTitle);
     okChildInt("StartupInfoA", "dwX", startup.dwX);
     okChildInt("StartupInfoA", "dwY", startup.dwY);
@@ -521,7 +527,7 @@

     okChildInt("StartupInfoA", "cb", startup.cb);
     okChildString("StartupInfoA", "lpDesktop", startup.lpDesktop);
-    okChildString("StartupInfoA", "lpTitle", startup.lpTitle);
+    okChildString("StartupInfoA", "lpTitle", si.lpTitle);
     okChildInt("StartupInfoA", "dwX", startup.dwX);
     okChildInt("StartupInfoA", "dwY", startup.dwY);
     okChildInt("StartupInfoA", "dwXSize", startup.dwXSize);



-- 
Francois Gouget         fgouget at free.fr        http://fgouget.free.fr/
  Any sufficiently advanced Operating System is indistinguishable from Linux




More information about the wine-patches mailing list