mirror of
https://gitlab.winehq.org/wine/wine-staging.git
synced 2025-01-28 22:04:43 -08:00
Removed several patches (accepted upstream).
This commit is contained in:
parent
981ea8facf
commit
b6a21b238f
2
debian/changelog
vendored
2
debian/changelog
vendored
@ -28,6 +28,8 @@ wine-staging (1.7.34) UNRELEASED; urgency=low
|
||||
* Removed patch for stub of ntdll.RtlSetHeapInformation (accepted upstream).
|
||||
* Removed patch for wine64 support on FreeBSD (accepted upstream).
|
||||
* Partially removed patches for ntdll DOS attributes (accepted upstream).
|
||||
* Partially removed patches for UTF7 support (accepted upstream).
|
||||
* Partially removed patches for IoCsqInitialize (accepted upstream).
|
||||
-- Sebastian Lackner <sebastian@fds-team.de> Mon, 15 Dec 2014 22:42:09 +0100
|
||||
|
||||
wine-compholio (1.7.33) unstable; urgency=low
|
||||
|
@ -1261,7 +1261,7 @@ ntoskrnl-Emulator.ok: ntdll-User_Shared_Data.ok
|
||||
# | * [#36777] vSphere needs IoCsqInitialize
|
||||
# |
|
||||
# | Modified files:
|
||||
# | * dlls/ntoskrnl.exe/ntoskrnl.c, dlls/ntoskrnl.exe/ntoskrnl.exe.spec, include/Makefile.in, include/ddk/csq.h
|
||||
# | * dlls/ntoskrnl.exe/ntoskrnl.c, dlls/ntoskrnl.exe/ntoskrnl.exe.spec
|
||||
# |
|
||||
.INTERMEDIATE: ntoskrnl-IoCsqInitialize.ok
|
||||
ntoskrnl-IoCsqInitialize.ok:
|
||||
|
@ -1,340 +1,17 @@
|
||||
From 33869b53b2b4bd532042b3cd92c1ab3652d583ff Mon Sep 17 00:00:00 2001
|
||||
From a7936c46c18d4c5a81c8eb2aa6c027aa0ae583b0 Mon Sep 17 00:00:00 2001
|
||||
From: Alex Henrie <alexhenrie24@gmail.com>
|
||||
Date: Fri, 17 Oct 2014 00:18:39 -0600
|
||||
Subject: kernel32/tests: Add tests for UTF-7 conversion.
|
||||
|
||||
---
|
||||
dlls/kernel32/tests/codepage.c | 593 +++++++++++++++++++++++++++++++++++++++++
|
||||
1 file changed, 593 insertions(+)
|
||||
dlls/kernel32/tests/codepage.c | 284 +++++++++++++++++++++++++++++++++++++++++
|
||||
1 file changed, 284 insertions(+)
|
||||
|
||||
diff --git a/dlls/kernel32/tests/codepage.c b/dlls/kernel32/tests/codepage.c
|
||||
index 6e89533..0eabaac 100644
|
||||
index aa7977d..fda83ca 100644
|
||||
--- a/dlls/kernel32/tests/codepage.c
|
||||
+++ b/dlls/kernel32/tests/codepage.c
|
||||
@@ -433,6 +433,266 @@ static void test_utf7_encoding(void)
|
||||
static const char base64_encoding_table[] =
|
||||
"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
|
||||
|
||||
+ const struct
|
||||
+ {
|
||||
+ /* inputs */
|
||||
+ WCHAR src[16];
|
||||
+ int srclen;
|
||||
+ char* dst;
|
||||
+ int dstlen;
|
||||
+ /* expected outputs */
|
||||
+ char expected_dst[16];
|
||||
+ int chars_written;
|
||||
+ int len;
|
||||
+ DWORD error;
|
||||
+ int reversed_len;
|
||||
+ }
|
||||
+ tests[] =
|
||||
+ {
|
||||
+ /* tests string conversion with srclen=-1 */
|
||||
+ {
|
||||
+ {0x4F60,0x597D,0x5417,0},
|
||||
+ -1,
|
||||
+ output,
|
||||
+ sizeof(output) - 1,
|
||||
+ "+T2BZfVQX-",
|
||||
+ 11,
|
||||
+ 11,
|
||||
+ 0xdeadbeef,
|
||||
+ 4
|
||||
+ },
|
||||
+ /* tests string conversion with srclen=-2 */
|
||||
+ {
|
||||
+ {0x4F60,0x597D,0x5417,0},
|
||||
+ -2,
|
||||
+ output,
|
||||
+ sizeof(output) - 1,
|
||||
+ "+T2BZfVQX-",
|
||||
+ 11,
|
||||
+ 11,
|
||||
+ 0xdeadbeef,
|
||||
+ 4
|
||||
+ },
|
||||
+ /* tests some invalid UTF-16 (stray lead surrogate) */
|
||||
+ {
|
||||
+ {0xD801,0},
|
||||
+ -1,
|
||||
+ output,
|
||||
+ sizeof(output) - 1,
|
||||
+ "+2AE-",
|
||||
+ 6,
|
||||
+ 6,
|
||||
+ 0xdeadbeef,
|
||||
+ 2
|
||||
+ },
|
||||
+ /* tests some more invalid UTF-16 (codepoint does not exist) */
|
||||
+ {
|
||||
+ {0xFF00,0},
|
||||
+ -1,
|
||||
+ output,
|
||||
+ sizeof(output) - 1,
|
||||
+ "+/wA-",
|
||||
+ 6,
|
||||
+ 6,
|
||||
+ 0xdeadbeef,
|
||||
+ 2
|
||||
+ },
|
||||
+ /* tests string conversion with dstlen=strlen(expected_dst) */
|
||||
+ {
|
||||
+ {0x4F60,0x597D,0x5417,0},
|
||||
+ -1,
|
||||
+ output,
|
||||
+ 10,
|
||||
+ "+T2BZfVQX-",
|
||||
+ 10,
|
||||
+ 0,
|
||||
+ ERROR_INSUFFICIENT_BUFFER,
|
||||
+ 3
|
||||
+ },
|
||||
+ /* tests string conversion with dstlen=strlen(expected_dst)+1 */
|
||||
+ {
|
||||
+ {0x4F60,0x597D,0x5417,0},
|
||||
+ -1,
|
||||
+ output,
|
||||
+ 11,
|
||||
+ "+T2BZfVQX-",
|
||||
+ 11,
|
||||
+ 11,
|
||||
+ 0xdeadbeef,
|
||||
+ 4
|
||||
+ },
|
||||
+ /* tests string conversion with dstlen=strlen(expected_dst)+2 */
|
||||
+ {
|
||||
+ {0x4F60,0x597D,0x5417,0},
|
||||
+ -1,
|
||||
+ output,
|
||||
+ 12,
|
||||
+ "+T2BZfVQX-",
|
||||
+ 11,
|
||||
+ 11,
|
||||
+ 0xdeadbeef,
|
||||
+ 4
|
||||
+ },
|
||||
+ /* tests dry run with dst=NULL and dstlen=0 */
|
||||
+ {
|
||||
+ {0x4F60,0x597D,0x5417,0},
|
||||
+ -1,
|
||||
+ NULL,
|
||||
+ 0,
|
||||
+ {},
|
||||
+ 0,
|
||||
+ 11,
|
||||
+ 0xdeadbeef,
|
||||
+ 0
|
||||
+ },
|
||||
+ /* tests dry run with dst!=NULL and dstlen=0 */
|
||||
+ {
|
||||
+ {0x4F60,0x597D,0x5417,0},
|
||||
+ -1,
|
||||
+ output,
|
||||
+ 0,
|
||||
+ {},
|
||||
+ 0,
|
||||
+ 11,
|
||||
+ 0xdeadbeef,
|
||||
+ 0
|
||||
+ },
|
||||
+ /* tests srclen > strlenW(src) */
|
||||
+ {
|
||||
+ {'a',0,'b',0},
|
||||
+ 4,
|
||||
+ output,
|
||||
+ sizeof(output) - 1,
|
||||
+ "a\0b",
|
||||
+ 4,
|
||||
+ 4,
|
||||
+ 0xdeadbeef,
|
||||
+ 4
|
||||
+ },
|
||||
+ /* tests srclen < strlenW(src) with directly encodable chars */
|
||||
+ {
|
||||
+ {'h','e','l','l','o',0},
|
||||
+ 2,
|
||||
+ output,
|
||||
+ sizeof(output) - 1,
|
||||
+ "he",
|
||||
+ 2,
|
||||
+ 2,
|
||||
+ 0xdeadbeef,
|
||||
+ 2
|
||||
+ },
|
||||
+ /* tests srclen < strlenW(src) with non-directly encodable chars */
|
||||
+ {
|
||||
+ {0x4F60,0x597D,0x5417,0},
|
||||
+ 2,
|
||||
+ output,
|
||||
+ sizeof(output) - 1,
|
||||
+ "+T2BZfQ-",
|
||||
+ 8,
|
||||
+ 8,
|
||||
+ 0xdeadbeef,
|
||||
+ 2
|
||||
+ },
|
||||
+ /* tests a buffer that runs out while not encoding a UTF-7 sequence */
|
||||
+ {
|
||||
+ {'h','e','l','l','o',0},
|
||||
+ -1,
|
||||
+ output,
|
||||
+ 2,
|
||||
+ "he",
|
||||
+ 2,
|
||||
+ 0,
|
||||
+ ERROR_INSUFFICIENT_BUFFER,
|
||||
+ 2
|
||||
+ },
|
||||
+ /* tests a buffer that runs out after writing 1 base64 character */
|
||||
+ {
|
||||
+ {0x4F60,0x0001,0},
|
||||
+ -1,
|
||||
+ output,
|
||||
+ 2,
|
||||
+ "+T",
|
||||
+ 2,
|
||||
+ 0,
|
||||
+ ERROR_INSUFFICIENT_BUFFER,
|
||||
+ 0
|
||||
+ },
|
||||
+ /* tests a buffer that runs out after writing 2 base64 characters */
|
||||
+ {
|
||||
+ {0x4F60,0x0001,0},
|
||||
+ -1,
|
||||
+ output,
|
||||
+ 3,
|
||||
+ "+T2",
|
||||
+ 3,
|
||||
+ 0,
|
||||
+ ERROR_INSUFFICIENT_BUFFER,
|
||||
+ 0
|
||||
+ },
|
||||
+ /* tests a buffer that runs out after writing 3 base64 characters */
|
||||
+ {
|
||||
+ {0x4F60,0x0001,0},
|
||||
+ -1,
|
||||
+ output,
|
||||
+ 4,
|
||||
+ "+T2A",
|
||||
+ 4,
|
||||
+ 0,
|
||||
+ ERROR_INSUFFICIENT_BUFFER,
|
||||
+ 1
|
||||
+ },
|
||||
+ /* tests a buffer that runs out just after writing the + sign */
|
||||
+ {
|
||||
+ {0x4F60,0},
|
||||
+ -1,
|
||||
+ output,
|
||||
+ 1,
|
||||
+ "+",
|
||||
+ 1,
|
||||
+ 0,
|
||||
+ ERROR_INSUFFICIENT_BUFFER,
|
||||
+ 0
|
||||
+ },
|
||||
+ /* tests a buffer that runs out just before writing the - sign
|
||||
+ * the number of bits to encode here is evenly divisible by 6 */
|
||||
+ {
|
||||
+ {0x4F60,0x597D,0x5417,0},
|
||||
+ -1,
|
||||
+ output,
|
||||
+ 9,
|
||||
+ "+T2BZfVQX",
|
||||
+ 9,
|
||||
+ 0,
|
||||
+ ERROR_INSUFFICIENT_BUFFER,
|
||||
+ 3
|
||||
+ },
|
||||
+ /* tests a buffer that runs out just before writing the - sign
|
||||
+ * the number of bits to encode here is NOT evenly divisible by 6 */
|
||||
+ {
|
||||
+ {0x4F60,0},
|
||||
+ -1,
|
||||
+ output,
|
||||
+ 4,
|
||||
+ "+T2",
|
||||
+ 3,
|
||||
+ 0,
|
||||
+ ERROR_INSUFFICIENT_BUFFER,
|
||||
+ 0
|
||||
+ },
|
||||
+ /* tests a buffer that runs out in the middle of escaping a + sign */
|
||||
+ {
|
||||
+ {'+',0},
|
||||
+ -1,
|
||||
+ output,
|
||||
+ 1,
|
||||
+ "+",
|
||||
+ 1,
|
||||
+ 0,
|
||||
+ ERROR_INSUFFICIENT_BUFFER,
|
||||
+ 0
|
||||
+ }
|
||||
+ };
|
||||
+
|
||||
if (WideCharToMultiByte(CP_UTF7, 0, foobarW, -1, NULL, 0, NULL, NULL) == 0 &&
|
||||
GetLastError() == ERROR_CALL_NOT_IMPLEMENTED)
|
||||
{
|
||||
@@ -525,6 +785,55 @@ static void test_utf7_encoding(void)
|
||||
ok(output[expected_len] == '#', "i=0x%04x: expected output[%i]='#', got output[%i]=%i\n",
|
||||
i, expected_len, expected_len, output[expected_len]);
|
||||
}
|
||||
+
|
||||
+ for (i = 0; i < sizeof(tests) / sizeof(tests[0]); i++)
|
||||
+ {
|
||||
+ memset(output, '#', sizeof(output) - 1);
|
||||
+ output[sizeof(output) - 1] = 0;
|
||||
+
|
||||
+ SetLastError(0xdeadbeef);
|
||||
+ len = WideCharToMultiByte(CP_UTF7, 0, tests[i].src, tests[i].srclen,
|
||||
+ tests[i].dst, tests[i].dstlen, NULL, NULL);
|
||||
+
|
||||
+ ok(GetLastError() == tests[i].error,
|
||||
+ "tests[%i]: expected error=0x%x, got error=0x%x\n", i, tests[i].error, GetLastError());
|
||||
+ ok(len == tests[i].len, "tests[%i]: expected len=%i, got len=%i\n", i, tests[i].len, len);
|
||||
+
|
||||
+ if (tests[i].dst)
|
||||
+ {
|
||||
+ ok(memcmp(tests[i].dst, tests[i].expected_dst, tests[i].chars_written) == 0,
|
||||
+ "tests[%i]: expected dst=\"%s\", got dst=\"%s\"\n",
|
||||
+ i, tests[i].expected_dst, tests[i].dst);
|
||||
+ ok(tests[i].dst[tests[i].chars_written] == '#',
|
||||
+ "tests[%i]: expected dst[%i]='#', got dst[%i]=%i\n",
|
||||
+ i, tests[i].chars_written, tests[i].chars_written, tests[i].dst[tests[i].chars_written]);
|
||||
+ }
|
||||
+
|
||||
+ /* utf16-to-utf7 tests that are not dry runs can be reversed to make utf7-to-utf16 tests */
|
||||
+ if (tests[i].chars_written)
|
||||
+ {
|
||||
+ WCHAR w_buffer[16];
|
||||
+
|
||||
+ memset(w_buffer, '#', sizeof(w_buffer) - sizeof(WCHAR));
|
||||
+ w_buffer[sizeof(w_buffer) / sizeof(WCHAR) - 1] = 0;
|
||||
+
|
||||
+ SetLastError(0xdeadbeef);
|
||||
+ len = MultiByteToWideChar(CP_UTF7, 0, tests[i].expected_dst, tests[i].chars_written,
|
||||
+ w_buffer, sizeof(w_buffer) / sizeof(WCHAR) - 1);
|
||||
+
|
||||
+ ok(GetLastError() == 0xdeadbeef,
|
||||
+ "tests[%i]: expected error=0xdeadbeef, got error=0x%x\n", i, GetLastError());
|
||||
+ ok(len == tests[i].reversed_len,
|
||||
+ "tests[%i]: expected len=%i, got len=%i\n", i, tests[i].reversed_len, len);
|
||||
+ ok(memcmp(w_buffer, tests[i].src, tests[i].reversed_len * sizeof(WCHAR)) == 0,
|
||||
+ "tests[%i]: expected w_buffer[0:%i]=%s, got w_buffer[0:%i]=%s\n",
|
||||
+ i, tests[i].reversed_len, wine_dbgstr_wn(tests[i].src, tests[i].reversed_len),
|
||||
+ tests[i].reversed_len, wine_dbgstr_wn(w_buffer, tests[i].reversed_len));
|
||||
+ ok(w_buffer[tests[i].reversed_len] == 0x2323,
|
||||
+ "tests[%i]: expected w_buffer[%i]=0x2323, got w_buffer[%i]=0x%04x\n",
|
||||
+ i, tests[i].reversed_len, tests[i].reversed_len, w_buffer[tests[i].reversed_len]);
|
||||
+ }
|
||||
+ }
|
||||
}
|
||||
|
||||
static void test_utf7_decoding(void)
|
||||
@@ -545,6 +854,265 @@ static void test_utf7_decoding(void)
|
||||
@@ -681,6 +681,265 @@ static void test_utf7_decoding(void)
|
||||
41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, -1, -1, -1, -1, -1 /* 0x70-0x7F */
|
||||
};
|
||||
|
||||
@ -600,7 +277,7 @@ index 6e89533..0eabaac 100644
|
||||
if (MultiByteToWideChar(CP_UTF7, 0, "foobar", -1, NULL, 0) == 0 &&
|
||||
GetLastError() == ERROR_CALL_NOT_IMPLEMENTED)
|
||||
{
|
||||
@@ -645,6 +1213,31 @@ static void test_utf7_decoding(void)
|
||||
@@ -781,6 +1040,31 @@ static void test_utf7_decoding(void)
|
||||
"i=0x%02x: expected output=%s, got output=%s\n",
|
||||
i, wine_dbgstr_wn(expected, expected_len + 1), wine_dbgstr_wn(output, expected_len + 1));
|
||||
}
|
||||
@ -633,5 +310,5 @@ index 6e89533..0eabaac 100644
|
||||
|
||||
static void test_undefined_byte_char(void)
|
||||
--
|
||||
2.1.3
|
||||
2.2.1
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
From e600a4020ee684f73376d5c7389e6326291d3f1b Mon Sep 17 00:00:00 2001
|
||||
From 59b1380d74f70b875c9e4642131b0fdbf06ec820 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Michael=20M=C3=BCller?= <michael@fds-team.de>
|
||||
Date: Sat, 8 Nov 2014 22:39:28 +0100
|
||||
Subject: msvcrt: Avoid crash when NULL pointer is passed to atof / strtod
|
||||
@ -27,7 +27,7 @@ index 6f9280f..d933643 100644
|
||||
}
|
||||
|
||||
diff --git a/dlls/msvcrt/tests/string.c b/dlls/msvcrt/tests/string.c
|
||||
index 1788035..5620c6d 100644
|
||||
index e2d53d4..d40d8d8 100644
|
||||
--- a/dlls/msvcrt/tests/string.c
|
||||
+++ b/dlls/msvcrt/tests/string.c
|
||||
@@ -89,6 +89,8 @@ static int (__cdecl *p_tolower)(int);
|
||||
@ -37,9 +37,9 @@ index 1788035..5620c6d 100644
|
||||
+static double (__cdecl *p__atof_l)(const char*,_locale_t);
|
||||
+static double (__cdecl *p__strtod_l)(const char *,char**,_locale_t);
|
||||
static int (__cdecl *p__strnset_s)(char*,size_t,int,size_t);
|
||||
static int (__cdecl *p__wcsset_s)(wchar_t*,size_t,wchar_t);
|
||||
|
||||
#define SETNOFAIL(x,y) x = (void*)GetProcAddress(hMsvcrt,y)
|
||||
@@ -1552,6 +1554,31 @@ static void test__strtod(void)
|
||||
@@ -1553,6 +1555,31 @@ static void test__strtod(void)
|
||||
char *end;
|
||||
double d;
|
||||
|
||||
@ -71,7 +71,7 @@ index 1788035..5620c6d 100644
|
||||
d = strtod(double1, &end);
|
||||
ok(almost_equal(d, 12.1), "d = %lf\n", d);
|
||||
ok(end == double1+4, "incorrect end (%d)\n", (int)(end-double1));
|
||||
@@ -2609,6 +2636,11 @@ static void test_atoi(void)
|
||||
@@ -2610,6 +2637,11 @@ static void test_atoi(void)
|
||||
{
|
||||
int r;
|
||||
|
||||
@ -83,7 +83,7 @@ index 1788035..5620c6d 100644
|
||||
r = atoi("0");
|
||||
ok(r == 0, "atoi(0) = %d\n", r);
|
||||
|
||||
@@ -2622,6 +2654,35 @@ static void test_atoi(void)
|
||||
@@ -2623,6 +2655,35 @@ static void test_atoi(void)
|
||||
ok(r == 0, "atoi(4294967296) = %d\n", r);
|
||||
}
|
||||
|
||||
@ -119,16 +119,16 @@ index 1788035..5620c6d 100644
|
||||
static void test_strncpy(void)
|
||||
{
|
||||
#define TEST_STRNCPY_LEN 10
|
||||
@@ -2796,6 +2857,8 @@ START_TEST(string)
|
||||
@@ -2831,6 +2892,8 @@ START_TEST(string)
|
||||
p_mbrtowc = (void*)GetProcAddress(hMsvcrt, "mbrtowc");
|
||||
p_mbsrtowcs = (void*)GetProcAddress(hMsvcrt, "mbsrtowcs");
|
||||
p__atodbl_l = (void*)GetProcAddress(hMsvcrt, "_atodbl_l");
|
||||
+ p__atof_l = (void*)GetProcAddress(hMsvcrt, "_atof_l");
|
||||
+ p__strtod_l = (void*)GetProcAddress(hMsvcrt, "_strtod_l");
|
||||
p__strnset_s = (void*)GetProcAddress(hMsvcrt, "_strnset_s");
|
||||
p__wcsset_s = (void*)GetProcAddress(hMsvcrt, "_wcsset_s");
|
||||
|
||||
/* MSVCRT memcpy behaves like memmove for overlapping moves,
|
||||
@@ -2848,6 +2911,7 @@ START_TEST(string)
|
||||
@@ -2884,6 +2947,7 @@ START_TEST(string)
|
||||
test__stricmp();
|
||||
test__wcstoi64();
|
||||
test_atoi();
|
||||
@ -137,5 +137,5 @@ index 1788035..5620c6d 100644
|
||||
test_strxfrm();
|
||||
test__strnset_s();
|
||||
--
|
||||
1.9.1
|
||||
2.2.1
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 4be020848661860f46ea2ce1091279ea25dc021a Mon Sep 17 00:00:00 2001
|
||||
From 61ec97d56ed90a727ae0b29cc72f1f86300a72ee Mon Sep 17 00:00:00 2001
|
||||
From: Austin English <austinenglish@gmail.com>
|
||||
Date: Tue, 4 Nov 2014 18:29:11 -0600
|
||||
Subject: ntoskrnl.exe: Add a stub for IoCsqInitialize.
|
||||
@ -6,13 +6,10 @@ Subject: ntoskrnl.exe: Add a stub for IoCsqInitialize.
|
||||
---
|
||||
dlls/ntoskrnl.exe/ntoskrnl.c | 12 ++++++++++++
|
||||
dlls/ntoskrnl.exe/ntoskrnl.exe.spec | 2 +-
|
||||
include/Makefile.in | 1 +
|
||||
include/ddk/csq.h | 33 +++++++++++++++++++++++++++++++++
|
||||
4 files changed, 47 insertions(+), 1 deletion(-)
|
||||
create mode 100644 include/ddk/csq.h
|
||||
2 files changed, 13 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/dlls/ntoskrnl.exe/ntoskrnl.c b/dlls/ntoskrnl.exe/ntoskrnl.c
|
||||
index a31b186..03a79c2 100644
|
||||
index 78df9f1..103ae3c 100644
|
||||
--- a/dlls/ntoskrnl.exe/ntoskrnl.c
|
||||
+++ b/dlls/ntoskrnl.exe/ntoskrnl.c
|
||||
@@ -33,6 +33,7 @@
|
||||
@ -23,7 +20,7 @@ index a31b186..03a79c2 100644
|
||||
#include "ddk/ntddk.h"
|
||||
#include "ddk/ntifs.h"
|
||||
#include "wine/unicode.h"
|
||||
@@ -1947,3 +1948,14 @@ NTSTATUS WINAPI IoRegisterPlugPlayNotification(IO_NOTIFICATION_EVENT_CATEGORY ca
|
||||
@@ -1996,3 +1997,14 @@ NTSTATUS WINAPI IoRegisterPlugPlayNotification(IO_NOTIFICATION_EVENT_CATEGORY ca
|
||||
FIXME("(%u %u %p %p %p %p %p) stub\n", category, flags, data, driver, callback, context, notification);
|
||||
return STATUS_SUCCESS;
|
||||
}
|
||||
@ -39,7 +36,7 @@ index a31b186..03a79c2 100644
|
||||
+ return STATUS_NOT_IMPLEMENTED;
|
||||
+}
|
||||
diff --git a/dlls/ntoskrnl.exe/ntoskrnl.exe.spec b/dlls/ntoskrnl.exe/ntoskrnl.exe.spec
|
||||
index 4ead907..ddb6b72 100644
|
||||
index 3bcf21c..228da29 100644
|
||||
--- a/dlls/ntoskrnl.exe/ntoskrnl.exe.spec
|
||||
+++ b/dlls/ntoskrnl.exe/ntoskrnl.exe.spec
|
||||
@@ -348,7 +348,7 @@
|
||||
@ -51,57 +48,6 @@ index 4ead907..ddb6b72 100644
|
||||
@ stub IoCsqInsertIrp
|
||||
@ stub IoCsqRemoveIrp
|
||||
@ stub IoCsqRemoveNextIrp
|
||||
diff --git a/include/Makefile.in b/include/Makefile.in
|
||||
index e8d2379..633c09d 100644
|
||||
--- a/include/Makefile.in
|
||||
+++ b/include/Makefile.in
|
||||
@@ -244,6 +244,7 @@ SRCDIR_INCLUDES = \
|
||||
dde.rh \
|
||||
ddeml.h \
|
||||
ddk/compstui.h \
|
||||
+ ddk/csq.h \
|
||||
ddk/hidsdi.h \
|
||||
ddk/imm.h \
|
||||
ddk/mountmgr.h \
|
||||
diff --git a/include/ddk/csq.h b/include/ddk/csq.h
|
||||
new file mode 100644
|
||||
index 0000000..6c75e5c
|
||||
--- /dev/null
|
||||
+++ b/include/ddk/csq.h
|
||||
@@ -0,0 +1,33 @@
|
||||
+/*
|
||||
+ * Copyright (C) the Wine project
|
||||
+ *
|
||||
+ * This library is free software; you can redistribute it and/or
|
||||
+ * modify it under the terms of the GNU Lesser General Public
|
||||
+ * License as published by the Free Software Foundation; either
|
||||
+ * version 2.1 of the License, or (at your option) any later version.
|
||||
+ *
|
||||
+ * This library is distributed in the hope that it will be useful,
|
||||
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
+ * Lesser General Public License for more details.
|
||||
+ *
|
||||
+ * You should have received a copy of the GNU Lesser General Public
|
||||
+ * License along with this library; if not, write to the Free Software
|
||||
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
|
||||
+ */
|
||||
+
|
||||
+#include "ddk/ntddk.h"
|
||||
+
|
||||
+#ifndef __WINE_CSQ_H
|
||||
+#define __WINE_CSQ_H
|
||||
+
|
||||
+typedef struct _IO_CSQ IO_CSQ, *PIO_CSQ;
|
||||
+
|
||||
+typedef VOID (*PIO_CSQ_ACQUIRE_LOCK)(PIO_CSQ Csq, PKIRQL Irql);
|
||||
+typedef VOID (*PIO_CSQ_COMPLETE_CANCELED_IRP)(PIO_CSQ Csq, PIRP Irp);
|
||||
+typedef VOID (*PIO_CSQ_INSERT_IRP)(PIO_CSQ Csq, PIRP Irp);
|
||||
+typedef PIRP (*PIO_CSQ_PEEK_NEXT_IRP)(PIO_CSQ Csq, PIRP Irp, PVOID PeekContext);
|
||||
+typedef VOID (*PIO_CSQ_RELEASE_LOCK)(PIO_CSQ Csq, KIRQL Irql);
|
||||
+typedef VOID (*PIO_CSQ_REMOVE_IRP)(PIO_CSQ Csq, PIRP Irp);
|
||||
+
|
||||
+#endif /* __WINE_CSQ_H */
|
||||
--
|
||||
2.1.3
|
||||
2.2.1
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user