Rebase against 60a3e0106246cb91d598a815d4fadf2791011142.

This commit is contained in:
Alistair Leslie-Hughes 2021-08-18 08:34:28 +10:00
parent b09fe464be
commit d7b8304e38
5 changed files with 56 additions and 76 deletions

View File

@ -1,4 +1,4 @@
From 798934ff91c9ed7b445af4b8c7e6442fede713fb Mon Sep 17 00:00:00 2001
From e5140396b7787d48d39f0b47876022c64fc1c2c7 Mon Sep 17 00:00:00 2001
From: Fabian Maurer <dark.shadow4@web.de>
Date: Fri, 10 Apr 2020 18:47:18 +0200
Subject: [PATCH] kernelbase: Implement sortkey generation on official tables
@ -10,10 +10,10 @@ Signed-off-by: Fabian Maurer <dark.shadow4@web.de>
2 files changed, 413 insertions(+), 123 deletions(-)
diff --git a/dlls/kernel32/tests/locale.c b/dlls/kernel32/tests/locale.c
index 42e14eb736f..29cfe95a47b 100644
index c65c2cce3f2..a5d88288f27 100644
--- a/dlls/kernel32/tests/locale.c
+++ b/dlls/kernel32/tests/locale.c
@@ -2692,6 +2692,13 @@ static void test_lcmapstring_unicode(lcmapstring_wrapper func_ptr, const char *f
@@ -2697,6 +2697,13 @@ static void test_lcmapstring_unicode(lcmapstring_wrapper func_ptr, const char *f
lstrlenW(symbols_stripped) + 1, ret);
ok(!lstrcmpW(buf, symbols_stripped), "%s string comparison mismatch\n", func_name);
@ -27,7 +27,7 @@ index 42e14eb736f..29cfe95a47b 100644
/* test srclen = 0 */
SetLastError(0xdeadbeef);
ret = func_ptr(0, upper_case, 0, buf, ARRAY_SIZE(buf));
@@ -3114,6 +3121,135 @@ static void test_sorting(void)
@@ -3126,6 +3133,135 @@ static void test_sorting(void)
}
}
@ -163,17 +163,17 @@ index 42e14eb736f..29cfe95a47b 100644
static void test_FoldStringA(void)
{
int ret, i, j;
@@ -7180,4 +7316,5 @@ START_TEST(locale)
@@ -7191,4 +7327,5 @@ START_TEST(locale)
test_NLSVersion();
test_geo_name();
/* this requires collation table patch to make it MS compatible */
if (0) test_sorting();
test_sorting();
+ test_unicode_sorting();
}
diff --git a/dlls/kernelbase/locale.c b/dlls/kernelbase/locale.c
index 24e8cd3f338..0e40db40f72 100644
index 89b35775053..5da87e065f1 100644
--- a/dlls/kernelbase/locale.c
+++ b/dlls/kernelbase/locale.c
@@ -2161,127 +2161,6 @@ static int wcstombs_codepage( UINT codepage, DWORD flags, const WCHAR *src, int
@@ -2164,127 +2164,6 @@ static int wcstombs_codepage( UINT codepage, DWORD flags, const WCHAR *src, int
return wcstombs_sbcs( info, src, srclen, dst, dstlen );
}
@ -301,7 +301,7 @@ index 24e8cd3f338..0e40db40f72 100644
/* compose a full-width katakana. return consumed source characters. */
static int compose_katakana( const WCHAR *src, int srclen, WCHAR *dst )
{
@@ -2609,6 +2488,280 @@ static int compare_weights(int flags, const WCHAR *str1, int len1,
@@ -2612,6 +2491,280 @@ static int compare_weights(int flags, const WCHAR *str1, int len1,
return len1 - len2;
}
@ -582,7 +582,7 @@ index 24e8cd3f338..0e40db40f72 100644
static const struct geoinfo *get_geoinfo_ptr( GEOID geoid )
{
@@ -5292,8 +5445,8 @@ INT WINAPI DECLSPEC_HOTPATCH LCMapStringEx( const WCHAR *locale, DWORD flags, co
@@ -5303,8 +5456,8 @@ INT WINAPI DECLSPEC_HOTPATCH LCMapStringEx( const WCHAR *locale, DWORD flags, co
TRACE( "(%s,0x%08x,%s,%d,%p,%d)\n",
debugstr_w(locale), flags, debugstr_wn(src, srclen), srclen, dst, dstlen );
@ -594,5 +594,5 @@ index 24e8cd3f338..0e40db40f72 100644
}
--
2.30.1
2.30.2

View File

@ -1,15 +1,15 @@
From adcb17116397f81a1ffec30badc6c02317033821 Mon Sep 17 00:00:00 2001
From ef7af537a65151a43603cf10a88d91a73fe07de4 Mon Sep 17 00:00:00 2001
From: Fabian Maurer <dark.shadow4@web.de>
Date: Sun, 6 Dec 2020 20:57:16 +0100
Subject: [PATCH] kernelbase: Implement CompareString functions
---
dlls/kernel32/tests/locale.c | 35 +++--
dlls/kernel32/tests/locale.c | 33 ++--
dlls/kernelbase/locale.c | 286 +++++++++++++++++++----------------
2 files changed, 175 insertions(+), 146 deletions(-)
2 files changed, 174 insertions(+), 145 deletions(-)
diff --git a/dlls/kernel32/tests/locale.c b/dlls/kernel32/tests/locale.c
index 276422801cb..51c6d91c0b5 100644
index 320e8f79387..667a950f4f1 100644
--- a/dlls/kernel32/tests/locale.c
+++ b/dlls/kernel32/tests/locale.c
@@ -1960,16 +1960,16 @@ static void test_CompareStringA(void)
@ -33,7 +33,7 @@ index 276422801cb..51c6d91c0b5 100644
lcid = MAKELCID(MAKELANGID(LANG_POLISH, SUBLANG_DEFAULT), SORT_DEFAULT);
@@ -2050,9 +2050,9 @@ static void test_CompareStringW(void)
@@ -2055,9 +2055,9 @@ static void test_CompareStringW(void)
ok(ret == CSTR_EQUAL, "expected CSTR_EQUAL, got %d\n", ret);
ret = CompareStringW(CP_ACP, NORM_IGNORENONSPACE, ABC_EE, 3, A_ACUTE_BC, 4);
@ -45,7 +45,7 @@ index 276422801cb..51c6d91c0b5 100644
ret = CompareStringW(CP_ACP, NORM_IGNORENONSPACE, A_ACUTE_BC, 4, A_ACUTE_BC_DECOMP, 5);
ok(ret == CSTR_EQUAL, "expected CSTR_EQUAL, got %d\n", ret);
@@ -2064,12 +2064,12 @@ static void test_CompareStringW(void)
@@ -2069,12 +2069,12 @@ static void test_CompareStringW(void)
ret = CompareStringW(CP_ACP, 0, A_NULL_BC, 4, A_ACUTE_BC, 4);
ok(ret == CSTR_LESS_THAN, "expected CSTR_LESS_THAN, got %d\n", ret);
ret = CompareStringW(CP_ACP, NORM_IGNORENONSPACE, A_NULL_BC, 4, A_ACUTE_BC, 4);
@ -60,7 +60,7 @@ index 276422801cb..51c6d91c0b5 100644
}
struct comparestringex_test {
@@ -2106,7 +2106,7 @@ static const struct comparestringex_test comparestringex_tests[] = {
@@ -2111,7 +2111,7 @@ static const struct comparestringex_test comparestringex_tests[] = {
},
{ /* 5 */
"tr-TR", 0,
@ -69,7 +69,7 @@ index 276422801cb..51c6d91c0b5 100644
},
/* with NORM_IGNORECASE */
{ /* 6 */
@@ -2131,7 +2131,7 @@ static const struct comparestringex_test comparestringex_tests[] = {
@@ -2136,7 +2136,7 @@ static const struct comparestringex_test comparestringex_tests[] = {
},
{ /* 11 */
"tr-TR", NORM_IGNORECASE,
@ -78,7 +78,7 @@ index 276422801cb..51c6d91c0b5 100644
},
/* with NORM_LINGUISTIC_CASING */
{ /* 12 */
@@ -2156,7 +2156,7 @@ static const struct comparestringex_test comparestringex_tests[] = {
@@ -2161,7 +2161,7 @@ static const struct comparestringex_test comparestringex_tests[] = {
},
{ /* 17 */
"tr-TR", NORM_LINGUISTIC_CASING,
@ -87,7 +87,7 @@ index 276422801cb..51c6d91c0b5 100644
},
/* with LINGUISTIC_IGNORECASE */
{ /* 18 */
@@ -2181,7 +2181,7 @@ static const struct comparestringex_test comparestringex_tests[] = {
@@ -2186,7 +2186,7 @@ static const struct comparestringex_test comparestringex_tests[] = {
},
{ /* 23 */
"tr-TR", LINGUISTIC_IGNORECASE,
@ -96,7 +96,7 @@ index 276422801cb..51c6d91c0b5 100644
},
/* with NORM_LINGUISTIC_CASING | NORM_IGNORECASE */
{ /* 24 */
@@ -2206,7 +2206,7 @@ static const struct comparestringex_test comparestringex_tests[] = {
@@ -2211,7 +2211,7 @@ static const struct comparestringex_test comparestringex_tests[] = {
},
{ /* 29 */
"tr-TR", NORM_LINGUISTIC_CASING | NORM_IGNORECASE,
@ -105,7 +105,7 @@ index 276422801cb..51c6d91c0b5 100644
},
/* with NORM_LINGUISTIC_CASING | LINGUISTIC_IGNORECASE */
{ /* 30 */
@@ -2231,7 +2231,7 @@ static const struct comparestringex_test comparestringex_tests[] = {
@@ -2236,7 +2236,7 @@ static const struct comparestringex_test comparestringex_tests[] = {
},
{ /* 35 */
"tr-TR", NORM_LINGUISTIC_CASING | LINGUISTIC_IGNORECASE,
@ -114,7 +114,7 @@ index 276422801cb..51c6d91c0b5 100644
}
};
@@ -3385,6 +3385,9 @@ static const struct sorting_test_entry unicode_sorting_tests[] =
@@ -3397,6 +3397,9 @@ static const struct sorting_test_entry unicode_sorting_tests[] =
{ L"en-US", CSTR_LESS_THAN, CSTR_LESS_THAN, 0, L"\x00dc", L"\x1ee9" },
{ L"en-US", CSTR_LESS_THAN, CSTR_LESS_THAN, 0, L"\x00fc", L"\x1ee6" },
{ L"en-US", CSTR_GREATER_THAN, CSTR_GREATER_THAN, 0, L"\x0152", L"\x00d6" },
@ -124,7 +124,7 @@ index 276422801cb..51c6d91c0b5 100644
};
static void test_unicode_sorting(void)
@@ -6126,7 +6129,7 @@ static void test_FindNLSStringEx(void)
@@ -6138,7 +6141,7 @@ static void test_FindNLSStringEx(void)
{ localeW, FIND_FROMSTART, comb_s_accent1W, ARRAY_SIZE(comb_s_accent1W)-1,
comb_s_accent2W, ARRAY_SIZE(comb_s_accent2W)-1, 0, 0, 6, 1, TRUE },
{ localeW, FIND_FROMSTART, comb_q_accent1W, ARRAY_SIZE(comb_q_accent1W)-1,
@ -133,19 +133,11 @@ index 276422801cb..51c6d91c0b5 100644
{ 0 }
};
struct test_data *ptest;
@@ -7490,6 +7493,6 @@ START_TEST(locale)
test_NLSVersion();
test_geo_name();
/* this requires collation table patch to make it MS compatible */
- if (0) test_sorting();
+ test_sorting();
test_unicode_sorting();
}
diff --git a/dlls/kernelbase/locale.c b/dlls/kernelbase/locale.c
index f651d7dc384..abcafbfa586 100644
index 5b27dd1d36c..01bc3357cf1 100644
--- a/dlls/kernelbase/locale.c
+++ b/dlls/kernelbase/locale.c
@@ -2368,126 +2368,6 @@ static int map_to_halfwidth( WCHAR c, WCHAR *dst, int dstlen )
@@ -2371,126 +2371,6 @@ static int map_to_halfwidth( WCHAR c, WCHAR *dst, int dstlen )
return 1;
}
@ -272,7 +264,7 @@ index f651d7dc384..abcafbfa586 100644
enum sortkey_special_script
{
SORTKEY_UNSORTABLE = 0,
@@ -2525,6 +2405,7 @@ struct sortkey_data
@@ -2528,6 +2408,7 @@ struct sortkey_data
BYTE *buffer;
int buffer_pos;
int buffer_len;
@ -280,7 +272,7 @@ index f651d7dc384..abcafbfa586 100644
};
static DWORD sortkey_get_exception(WCHAR ch, const struct sortguid *locale)
@@ -2736,7 +2617,10 @@ static void sortkey_add_diacritic_weights(struct sortkey_data *data, int flags,
@@ -2739,7 +2620,10 @@ static void sortkey_add_diacritic_weights(struct sortkey_data *data, int flags,
if (old_pos >= diacritic_start_pos)
{
if (old_pos < data->buffer_len)
@ -291,7 +283,7 @@ index f651d7dc384..abcafbfa586 100644
}
else
sortkey_add_diacritic_weight(data, info.weight_diacritic, last_weighted_pos);
@@ -2945,6 +2829,7 @@ static int sortkey_generate(int flags, const WCHAR *locale_name, const WCHAR *st
@@ -2948,6 +2832,7 @@ static int sortkey_generate(int flags, const WCHAR *locale_name, const WCHAR *st
data.buffer = buffer;
data.buffer_pos = 0;
data.buffer_len = buffer ? buffer_len : 0;
@ -299,7 +291,7 @@ index f651d7dc384..abcafbfa586 100644
if (str_len == -1)
str_len = wcslen(str);
@@ -2994,6 +2879,155 @@ static int sortkey_generate(int flags, const WCHAR *locale_name, const WCHAR *st
@@ -2997,6 +2882,155 @@ static int sortkey_generate(int flags, const WCHAR *locale_name, const WCHAR *st
return 0;
}
@ -455,7 +447,7 @@ index f651d7dc384..abcafbfa586 100644
static const struct geoinfo *get_geoinfo_ptr( GEOID geoid )
{
int min = 0, max = ARRAY_SIZE( geoinfodata )-1;
@@ -3467,16 +3501,8 @@ INT WINAPI CompareStringEx( const WCHAR *locale, DWORD flags, const WCHAR *str1,
@@ -3471,16 +3505,8 @@ INT WINAPI CompareStringEx( const WCHAR *locale, DWORD flags, const WCHAR *str1,
if (len1 < 0) len1 = lstrlenW(str1);
if (len2 < 0) len2 = lstrlenW(str2);
@ -475,5 +467,5 @@ index f651d7dc384..abcafbfa586 100644
--
2.30.1
2.30.2

View File

@ -1,4 +1,4 @@
From 740afed65c692a9f96494465ddb72a362fa91613 Mon Sep 17 00:00:00 2001
From b36d2db7b14e50e6bc2e74313f918737b32b60e9 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?R=C3=A9mi=20Bernon?= <rbernon@codeweavers.com>
Date: Tue, 8 Sep 2020 18:43:52 +0200
Subject: [PATCH] msxml3: Implement FreeThreadedXMLHTTP60.
@ -7,12 +7,12 @@ Update from Gijs Vermeulen <gijsvrm@gmail.com>
---
dlls/msxml3/Makefile.in | 2 +-
dlls/msxml3/factory.c | 5 +
dlls/msxml3/httprequest.c | 503 +++++++++++++++++++++++++++++++++++-
dlls/msxml3/httprequest.c | 496 +++++++++++++++++++++++++++++++++++-
dlls/msxml3/msxml_private.h | 1 +
dlls/msxml3/tests/httpreq.c | 395 +++++++++++++++++++++++++++-
dlls/msxml3/tests/schema.c | 6 +
dlls/msxml3/uuid.c | 5 +
7 files changed, 912 insertions(+), 5 deletions(-)
7 files changed, 905 insertions(+), 5 deletions(-)
diff --git a/dlls/msxml3/Makefile.in b/dlls/msxml3/Makefile.in
index 936c745895d..f9e629f89bc 100644
@ -26,7 +26,7 @@ index 936c745895d..f9e629f89bc 100644
EXTRAINCL = $(XML2_CFLAGS) $(XSLT_CFLAGS)
diff --git a/dlls/msxml3/factory.c b/dlls/msxml3/factory.c
index b8452ff4b4e..90a042fec92 100644
index 1a489b87a94..1c8e04813e5 100644
--- a/dlls/msxml3/factory.c
+++ b/dlls/msxml3/factory.c
@@ -281,6 +281,7 @@ static HRESULT DOMClassFactory_Create(const GUID *clsid, REFIID riid, void **ppv
@ -49,28 +49,25 @@ index b8452ff4b4e..90a042fec92 100644
IsEqualCLSID( rclsid, &CLSID_ServerXMLHTTP30 ) ||
IsEqualCLSID( rclsid, &CLSID_ServerXMLHTTP40 ) ||
diff --git a/dlls/msxml3/httprequest.c b/dlls/msxml3/httprequest.c
index 7286eb97bb7..ed59a12912b 100644
index 15a1f888ebd..a05e07b0c42 100644
--- a/dlls/msxml3/httprequest.c
+++ b/dlls/msxml3/httprequest.c
@@ -44,13 +44,16 @@
#include "docobj.h"
@@ -38,11 +38,13 @@
#include "shlwapi.h"
#include "msxml_dispex.h"
+#include "initguid.h"
+#include "rtworkq.h"
+
#include "msxml_private.h"
#include "wine/debug.h"
#ifdef HAVE_LIBXML2
#include "wine/unicode.h"
-WINE_DEFAULT_DEBUG_CHANNEL(msxml);
+WINE_DEFAULT_DEBUG_CHANNEL(xmlhttp);
static const WCHAR colspaceW[] = {':',' ',0};
static const WCHAR crlfW[] = {'\r','\n',0};
@@ -2031,6 +2034,468 @@ static const struct IServerXMLHTTPRequestVtbl ServerXMLHTTPRequestVtbl =
@@ -2075,6 +2077,468 @@ static const struct IServerXMLHTTPRequestVtbl ServerXMLHTTPRequestVtbl =
ServerXMLHTTPRequest_setOption
};
@ -539,7 +536,7 @@ index 7286eb97bb7..ed59a12912b 100644
static void init_httprequest(httprequest *req)
{
req->IXMLHTTPRequest_iface.lpVtbl = &XMLHTTPRequestVtbl;
@@ -2080,6 +2545,35 @@ HRESULT XMLHTTPRequest_create(void **obj)
@@ -2124,6 +2588,35 @@ HRESULT XMLHTTPRequest_create(void **obj)
return S_OK;
}
@ -575,25 +572,16 @@ index 7286eb97bb7..ed59a12912b 100644
HRESULT ServerXMLHTTP_create(void **obj)
{
serverhttp *req;
@@ -2109,6 +2603,13 @@ HRESULT XMLHTTPRequest_create(void **ppObj)
return E_NOTIMPL;
}
@@ -2143,3 +2636,4 @@ HRESULT ServerXMLHTTP_create(void **obj)
+HRESULT XMLHTTPRequest2_create(void **ppObj)
+{
+ MESSAGE("This program tried to use a XMLHTTPRequest object, but\n"
+ "libxml2 support was not present at compile time.\n");
+ return E_NOTIMPL;
+}
return S_OK;
}
+
HRESULT ServerXMLHTTP_create(void **obj)
{
MESSAGE("This program tried to use a ServerXMLHTTP object, but\n"
diff --git a/dlls/msxml3/msxml_private.h b/dlls/msxml3/msxml_private.h
index a59e00bf2b3..9797f96f3ca 100644
index d578d5de560..9fac4e5936f 100644
--- a/dlls/msxml3/msxml_private.h
+++ b/dlls/msxml3/msxml_private.h
@@ -501,6 +501,7 @@ extern HRESULT XMLDocument_create(void**) DECLSPEC_HIDDEN;
@@ -390,6 +390,7 @@ extern HRESULT XMLDocument_create(void**) DECLSPEC_HIDDEN;
extern HRESULT SAXXMLReader_create(MSXML_VERSION, void**) DECLSPEC_HIDDEN;
extern HRESULT SAXAttributes_create(MSXML_VERSION, void**) DECLSPEC_HIDDEN;
extern HRESULT XMLHTTPRequest_create(void **) DECLSPEC_HIDDEN;
@ -602,7 +590,7 @@ index a59e00bf2b3..9797f96f3ca 100644
extern HRESULT XSLTemplate_create(void**) DECLSPEC_HIDDEN;
extern HRESULT MXWriter_create(MSXML_VERSION, void**) DECLSPEC_HIDDEN;
diff --git a/dlls/msxml3/tests/httpreq.c b/dlls/msxml3/tests/httpreq.c
index 4a23f1d82a8..25378a99bdc 100644
index 2491e499638..511c2b26763 100644
--- a/dlls/msxml3/tests/httpreq.c
+++ b/dlls/msxml3/tests/httpreq.c
@@ -26,9 +26,9 @@
@ -617,7 +605,7 @@ index 4a23f1d82a8..25378a99bdc 100644
#include "dispex.h"
#include "initguid.h"
@@ -1333,6 +1333,17 @@ static IXMLHttpRequest *create_xhr(void)
@@ -1348,6 +1348,17 @@ static IXMLHttpRequest *create_xhr(void)
return SUCCEEDED(hr) ? ret : NULL;
}
@ -635,7 +623,7 @@ index 4a23f1d82a8..25378a99bdc 100644
static IServerXMLHTTPRequest *create_server_xhr(void)
{
IServerXMLHTTPRequest *ret;
@@ -1889,11 +1900,388 @@ static void test_supporterrorinfo(void)
@@ -1908,11 +1919,388 @@ static void test_supporterrorinfo(void)
IServerXMLHTTPRequest_Release(server_xhr);
}
@ -1025,7 +1013,7 @@ index 4a23f1d82a8..25378a99bdc 100644
if (!(xhr = create_xhr()))
{
@@ -1908,6 +2296,7 @@ START_TEST(httpreq)
@@ -1927,6 +2315,7 @@ START_TEST(httpreq)
test_server_xhr();
test_safe_httpreq();
test_supporterrorinfo();
@ -1034,7 +1022,7 @@ index 4a23f1d82a8..25378a99bdc 100644
CoUninitialize();
}
diff --git a/dlls/msxml3/tests/schema.c b/dlls/msxml3/tests/schema.c
index 964e368bf84..1b3b5cbad1b 100644
index 219d7144ddb..7ef033237a1 100644
--- a/dlls/msxml3/tests/schema.c
+++ b/dlls/msxml3/tests/schema.c
@@ -32,10 +32,16 @@

View File

@ -51,7 +51,7 @@ usage()
# Get the upstream commit sha
upstream_commit()
{
echo "7f144646ffac6f3632d0c39b217dbd433c1154a0"
echo "60a3e0106246cb91d598a815d4fadf2791011142"
}
# Show version information

View File

@ -1 +1 @@
7f144646ffac6f3632d0c39b217dbd433c1154a0
60a3e0106246cb91d598a815d4fadf2791011142