From 19bfe3af52fc5475893d40f9c01f0c85eb015906 Mon Sep 17 00:00:00 2001 From: Amine Khaldi Date: Fri, 27 Nov 2015 20:11:40 +0000 Subject: [PATCH] [KERNEL32] Sync sortkey.c with Wine Staging 1.7.55. CORE-10536 svn path=/trunk/; revision=70161 --- .../dll/win32/kernel32/winnls/string/sortkey.c | 15 ++++++--------- reactos/media/doc/README.WINE | 2 +- 2 files changed, 7 insertions(+), 10 deletions(-) diff --git a/reactos/dll/win32/kernel32/winnls/string/sortkey.c b/reactos/dll/win32/kernel32/winnls/string/sortkey.c index 3e643ec4220..4bf57ccd313 100644 --- a/reactos/dll/win32/kernel32/winnls/string/sortkey.c +++ b/reactos/dll/win32/kernel32/winnls/string/sortkey.c @@ -225,6 +225,8 @@ static inline int compare_unicode_weights(int flags, const WCHAR *str1, int len1 len1--; len2--; } + if (len1 && !*str1) len1--; + if (len2 && !*str2) len2--; return len1 - len2; } @@ -274,6 +276,8 @@ static inline int compare_diacritic_weights(int flags, const WCHAR *str1, int le len1--; len2--; } + if (len1 && !*str1) len1--; + if (len2 && !*str2) len2--; return len1 - len2; } @@ -323,23 +327,16 @@ static inline int compare_case_weights(int flags, const WCHAR *str1, int len1, len1--; len2--; } + if (len1 && !*str1) len1--; + if (len2 && !*str2) len2--; return len1 - len2; } -static inline int real_length(const WCHAR *str, int len) -{ - while (len && !str[len - 1]) len--; - return len; -} - int wine_compare_string(int flags, const WCHAR *str1, int len1, const WCHAR *str2, int len2) { int ret; - len1 = real_length(str1, len1); - len2 = real_length(str2, len2); - ret = compare_unicode_weights(flags, str1, len1, str2, len2); if (!ret) { diff --git a/reactos/media/doc/README.WINE b/reactos/media/doc/README.WINE index 5135963f5fa..5350d903ad3 100644 --- a/reactos/media/doc/README.WINE +++ b/reactos/media/doc/README.WINE @@ -278,7 +278,7 @@ kernel32 - reactos/dll/win32/kernel32/winnls/string/lang.c # Synced in r52754 reactos/dll/win32/kernel32/winnls/string/lcformat.c # Synced to WineStaging-1.7.55 reactos/dll/win32/kernel32/winnls/string/nls.c # Synced in r52754 - reactos/dll/win32/kernel32/winnls/string/sortkey.c # Synced to WineStaging-1.7.37 + reactos/dll/win32/kernel32/winnls/string/sortkey.c # Synced to WineStaging-1.7.55 msvcrt - reactos/lib/sdk/crt/except/cpp.c # Synced at 20080528