Morning all,

Could someone far smarter than me please take a look at the attached patch?

Windows XP 64-bit runs NT kernel 5.2, whereas 32-bit runs 5.1.  Any
64-bit app expecting XP 64-bit will fail (such as IE8 for NT 5.2).

The patch lets the installer continue, but I'm not sure if it is enough
to be accepted.

For example, do I need to "winxp,winxp64", here?
http://source.winehq.org/source/dlls/ntdll/version.c?v=wine-1.3.17#L172

TIA,

Ken.

>From 6e89cbab2ac50927b9fd1f9c39e633fe8b3289d8 Mon Sep 17 00:00:00 2001
From: Ken Sharp <kennyb...@o2.co.uk>
Date: Wed, 13 Apr 2011 05:32:53 +0100
Subject: ntdll: Add support for Windows XP 64-bit

---
 dlls/ntdll/version.c           |    7 +++++++
 programs/winecfg/appdefaults.c |    1 +
 2 files changed, 8 insertions(+), 0 deletions(-)

diff --git a/dlls/ntdll/version.c b/dlls/ntdll/version.c
index 46385c9..dfb6ef6 100644
--- a/dlls/ntdll/version.c
+++ b/dlls/ntdll/version.c
@@ -50,6 +50,7 @@ typedef enum
     NT40,    /* Windows NT 4.0 */
     NT2K,    /* Windows 2000 */
     WINXP,   /* Windows XP */
+    WINXP64, /* Windows XP 64-bit */
     WIN2K3,  /* Windows 2003 */
     WINVISTA,/* Windows Vista */
     WIN2K8,  /* Windows 2008 */
@@ -132,6 +133,12 @@ static const RTL_OSVERSIONINFOEXW VersionData[NB_WINDOWS_VERSIONS] =
         {'S','e','r','v','i','c','e',' ','P','a','c','k',' ','3',0},
         3, 0, VER_SUITE_SINGLEUSERTS, VER_NT_WORKSTATION, 30 /* FIXME: Great, a reserved field with a value! */
     },
+    /* WINXP64 */
+    {
+        sizeof(RTL_OSVERSIONINFOEXW), 5, 2, 0xECE, VER_PLATFORM_WIN32_NT,
+        {'S','e','r','v','i','c','e',' ','P','a','c','k',' ','2',0},
+        2, 0, VER_SUITE_SINGLEUSERTS, VER_NT_WORKSTATION, 0
+    },
     /* WIN2K3 */
     {
         sizeof(RTL_OSVERSIONINFOEXW), 5, 2, 0xECE, VER_PLATFORM_WIN32_NT,
diff --git a/programs/winecfg/appdefaults.c b/programs/winecfg/appdefaults.c
index 6101c48..651d964 100644
--- a/programs/winecfg/appdefaults.c
+++ b/programs/winecfg/appdefaults.c
@@ -53,6 +53,7 @@ static const struct
     { "win2008", "Windows 2008",   6,  0, 0x1771,VER_PLATFORM_WIN32_NT, "Service Pack 1", 0, 0, "ServerNT"},
     { "vista",   "Windows Vista",  6,  0, 0x1772,VER_PLATFORM_WIN32_NT, "Service Pack 2", 2, 0, "WinNT"},
     { "win2003", "Windows 2003",   5,  2, 0xECE, VER_PLATFORM_WIN32_NT, "Service Pack 2", 2, 0, "ServerNT"},
+    { "winxp64", "Windows XP 64-bit",   5,  2, 0xECE, VER_PLATFORM_WIN32_NT, "Service Pack 2", 2, 0, "WinNT"},
     { "winxp",   "Windows XP",     5,  1, 0xA28, VER_PLATFORM_WIN32_NT, "Service Pack 3", 3, 0, "WinNT"},
     { "win2k",   "Windows 2000",   5,  0, 0x893, VER_PLATFORM_WIN32_NT, "Service Pack 4", 4, 0, "WinNT"},
     { "winme",   "Windows ME",     4, 90, 0xBB8, VER_PLATFORM_WIN32_WINDOWS, " ", 0, 0, ""},
-- 
1.7.1




Reply via email to