[SXS] Sync with Wine Staging 4.0. CORE-15682
authorAmine Khaldi <amine.khaldi@reactos.org>
Mon, 4 Feb 2019 12:02:29 +0000 (13:02 +0100)
committerAmine Khaldi <amine.khaldi@reactos.org>
Mon, 4 Feb 2019 12:02:29 +0000 (13:02 +0100)
dll/win32/sxs/cache.c
dll/win32/sxs/name.c
media/doc/README.WINE

index 791a6ed..3cc26f2 100644 (file)
@@ -103,7 +103,7 @@ static unsigned int build_sxs_path( WCHAR *path )
     unsigned int len = GetWindowsDirectoryW( path, MAX_PATH );
 
     memcpy( path + len, winsxsW, sizeof(winsxsW) );
-    return len + sizeof(winsxsW) / sizeof(winsxsW[0]) - 1;
+    return len + ARRAY_SIZE(winsxsW) - 1;
 }
 
 static WCHAR *build_assembly_name( const WCHAR *arch, const WCHAR *name, const WCHAR *token,
@@ -111,7 +111,7 @@ static WCHAR *build_assembly_name( const WCHAR *arch, const WCHAR *name, const W
 {
     static const WCHAR fmtW[] =
         {'%','s','_','%','s','_','%','s','_','%','s','_','n','o','n','e','_','d','e','a','d','b','e','e','f',0};
-    unsigned int buflen = sizeof(fmtW) / sizeof(fmtW[0]);
+    unsigned int buflen = ARRAY_SIZE(fmtW);
     WCHAR *ret, *p;
 
     buflen += strlenW( arch );
@@ -133,7 +133,7 @@ static WCHAR *build_manifest_path( const WCHAR *arch, const WCHAR *name, const W
     unsigned int len;
 
     if (!(path = build_assembly_name( arch, name, token, version, &len ))) return NULL;
-    len += sizeof(fmtW) / sizeof(fmtW[0]);
+    len += ARRAY_SIZE(fmtW);
     len += build_sxs_path( sxsdir );
     if (!(ret = HeapAlloc( GetProcessHeap(), 0, len * sizeof(WCHAR) )))
     {
@@ -150,7 +150,7 @@ static WCHAR *build_policy_name( const WCHAR *arch, const WCHAR *name, const WCH
 {
     static const WCHAR fmtW[] =
         {'%','s','_','%','s','_','%','s','_','n','o','n','e','_','d','e','a','d','b','e','e','f',0};
-    unsigned int buflen = sizeof(fmtW) / sizeof(fmtW[0]);
+    unsigned int buflen = ARRAY_SIZE(fmtW);
     WCHAR *ret, *p;
 
     buflen += strlenW( arch );
@@ -171,7 +171,7 @@ static WCHAR *build_policy_path( const WCHAR *arch, const WCHAR *name, const WCH
     unsigned int len;
 
     if (!(path = build_policy_name( arch, name, token, &len ))) return NULL;
-    len += sizeof(fmtW) / sizeof(fmtW[0]);
+    len += ARRAY_SIZE(fmtW);
     len += build_sxs_path( sxsdir );
     len += strlenW( version );
     if (!(ret = HeapAlloc( GetProcessHeap(), 0, len * sizeof(WCHAR) )))
@@ -501,9 +501,9 @@ static WCHAR *build_policy_filename( const WCHAR *arch, const WCHAR *name, const
 
     if (!(fullname = build_policy_name( arch, name, token, &len ))) return NULL;
     len += build_sxs_path( sxsdir );
-    len += sizeof(policiesW) / sizeof(policiesW[0]) - 1;
+    len += ARRAY_SIZE(policiesW) - 1;
     len += strlenW( version );
-    len += sizeof(suffixW) / sizeof(suffixW[0]) - 1;
+    len += ARRAY_SIZE(suffixW) - 1;
     if (!(ret = HeapAlloc( GetProcessHeap(), 0, (len + 1) * sizeof(WCHAR) )))
     {
         HeapFree( GetProcessHeap(), 0, fullname );
@@ -572,8 +572,8 @@ static WCHAR *build_manifest_filename( const WCHAR *arch, const WCHAR *name, con
 
     if (!(fullname = build_assembly_name( arch, name, token, version, &len ))) return NULL;
     len += build_sxs_path( sxsdir );
-    len += sizeof(manifestsW) / sizeof(manifestsW[0]) - 1;
-    len += sizeof(suffixW) / sizeof(suffixW[0]) - 1;
+    len += ARRAY_SIZE(manifestsW) - 1;
+    len += ARRAY_SIZE(suffixW) - 1;
     if (!(ret = HeapAlloc( GetProcessHeap(), 0, (len + 1) * sizeof(WCHAR) )))
     {
         HeapFree( GetProcessHeap(), 0, fullname );
index 74aece2..e109014 100644 (file)
@@ -329,25 +329,25 @@ static HRESULT parse_displayname( struct name *name, const WCHAR *displayname )
         while (*q && *q != '=') q++;
         if (!*q) return E_INVALIDARG;
         len = q - p;
-        if (len == sizeof(archW)/sizeof(archW[0]) - 1 && !memcmp( p, archW, len * sizeof(WCHAR) ))
+        if (len == ARRAY_SIZE(archW) - 1 && !memcmp( p, archW, len * sizeof(WCHAR) ))
         {
             p = ++q;
             if (!(name->arch = parse_value( p, &len ))) return E_INVALIDARG;
             q += len;
         }
-        else if (len == sizeof(tokenW)/sizeof(tokenW[0]) - 1 && !memcmp( p, tokenW, len * sizeof(WCHAR) ))
+        else if (len == ARRAY_SIZE(tokenW) - 1 && !memcmp( p, tokenW, len * sizeof(WCHAR) ))
         {
             p = ++q;
             if (!(name->token = parse_value( p, &len ))) return E_INVALIDARG;
             q += len;
         }
-        else if (len == sizeof(typeW)/sizeof(typeW[0]) - 1 && !memcmp( p, typeW, len * sizeof(WCHAR) ))
+        else if (len == ARRAY_SIZE(typeW) - 1 && !memcmp( p, typeW, len * sizeof(WCHAR) ))
         {
             p = ++q;
             if (!(name->type = parse_value( p, &len ))) return E_INVALIDARG;
             q += len;
         }
-        else if (len == sizeof(versionW)/sizeof(versionW[0]) - 1 && !memcmp( p, versionW, len * sizeof(WCHAR) ))
+        else if (len == ARRAY_SIZE(versionW) - 1 && !memcmp( p, versionW, len * sizeof(WCHAR) ))
         {
             p = ++q;
             if (!(name->version = parse_value( p, &len ))) return E_INVALIDARG;
index 859ae5a..2a5349e 100644 (file)
@@ -181,7 +181,7 @@ reactos/dll/win32/softpub             # Synced to WineStaging-2.9
 reactos/dll/win32/stdole2.tlb         # Synced to WineStaging-3.3
 reactos/dll/win32/stdole32.tlb        # Synced to WineStaging-3.3
 reactos/dll/win32/sti                 # Synced to WineStaging-3.3
-reactos/dll/win32/sxs                 # Synced to WineStaging-3.3
+reactos/dll/win32/sxs                 # Synced to WineStaging-4.0
 reactos/dll/win32/t2embed             # Synced to WineStaging-3.3
 reactos/dll/win32/tapi32              # Synced to WineStaging-3.3
 reactos/dll/win32/traffic             # Synced to WineStaging-3.3