Compare commits

..

17 Commits

Author SHA1 Message Date
Alistair Leslie-Hughes
dde734350d Release v8.1 2023-02-03 11:05:06 +11:00
Alistair Leslie-Hughes
e113a09752 Rebase against 6c75cddb9851095694dfa397870919d4cc70d3ef. 2023-02-01 10:02:22 +11:00
Zebediah Figura
0e512f9c79 ntdll-Placeholders: Add some documentation for traceability.
We don't have a WineHQ bug report, and it may be difficult to make one, but let's at least write down what this is for.
2023-01-30 13:47:24 -06:00
Zebediah Figura
e222e26baa readme: Deprecate patchinstall.sh in favor of patchinstall.py. 2023-01-30 12:18:11 -06:00
Zebediah Figura
1e9c7533cb ntdll-Placeholders: Add missing dependency on ntdll-WRITECOPY. 2023-01-30 12:16:14 -06:00
Zebediah Figura
89aa62efe0 Update patchinstall.sh. 2023-01-29 17:11:34 -06:00
Zebediah Figura
6d4f5803c8 ntdll-Builtin_Prot: Remove patch set.
Obviated by upstream commit 6b8cbfe3fd (and more generally full PE conversion
finished in 60eeb92ae03).
2023-01-29 12:32:41 -06:00
Zebediah Figura
33879905f2 Rebase against 4e5fab6214d9304004369d50b6c73b8d88cf46d8. 2023-01-27 17:13:51 -06:00
Alistair Leslie-Hughes
d6ac81a83b Rebase against aabdb15458aaee80b157175bc31cbaf3d57bf5e4. 2023-01-27 10:39:34 +11:00
Alistair Leslie-Hughes
c7feffdb95 Add missed files 2023-01-26 14:56:29 +11:00
Alistair Leslie-Hughes
fc3f586bd4 Rebase against 876742bf2bf23765cd8a845a20b297cdf7803c67. 2023-01-26 10:07:12 +11:00
Alistair Leslie-Hughes
5fe0566802 Restore winex11-wglShareLists patchset 2023-01-25 16:25:53 +11:00
Alistair Leslie-Hughes
484054b204 Rebase against be57ebe01581f709b0e52a29304668eaaf6f0634. 2023-01-25 10:19:48 +11:00
Alistair Leslie-Hughes
e9f69afcab Release v8.0 2023-01-25 09:05:18 +11:00
Alistair Leslie-Hughes
8a7297ab71 Release v8.0-rc5 2023-01-22 14:05:19 +11:00
Alistair Leslie-Hughes
8937409359 Release v8.0-rc4 2023-01-15 12:47:55 +11:00
Alistair Leslie-Hughes
0a970828aa Updated msxml3-FreeThreadedXMLHTTP60 patchset
This allows Tonk Hawk 1+2 on EGS connect to it's servers succesfully.

It would error on SetProperty, and then abort the connection.
2023-01-12 09:32:32 +11:00
17 changed files with 339 additions and 237 deletions

View File

@@ -33,11 +33,11 @@ of information about that is collected in the
[WineHQ Wiki](http://wiki.winehq.org/BuildingWine).
In order to apply all Wine Staging patches it is recommended to use the
`patchinstall.sh` utility which takes care of applying all patches in the
`patchinstall.py` utility which takes care of applying all patches in the
correct order. For reference, the possible commandline arguments are:
```
Usage: ./patchinstall.sh [DESTDIR=path] [--all] [-W patchset] [patchset ...]
Usage: ./staging/patchinstall.py [DESTDIR=path] [-W patchset] [patchset ...]
Autogenerated script to apply all Wine Staging patches on your Wine
source tree.
@@ -55,17 +55,14 @@ Configuration:
Backends:
--backend=patch Use regular 'patch' utility to apply patches (default)
--backend=eapply Use 'eapply' to apply patches (Gentoo only)
--backend=epatch Use 'epatch' to apply patches (Gentoo only, deprecated)
--backend=git-am Use 'git am' to apply patches
--backend=git-apply Use 'git apply' to apply patches
--backend=stg Import the patches using stacked git
```
If you want to apply *all* patches with the `patch` utility, the commandline
should look similar to this:
```
./patches/patchinstall.sh DESTDIR="/path/to/wine" --all
./staging/patchinstall.py DESTDIR="/path/to/wine" --all
```
Before you proceed with the compilation, please make sure that you installed all

View File

@@ -1,25 +0,0 @@
From e35d665256d08ebccee30361867ba57f790d519f Mon Sep 17 00:00:00 2001
From: Sebastian Lackner <sebastian@fds-team.de>
Date: Tue, 22 Mar 2016 23:01:32 +0100
Subject: rpcrt4: Avoid implicit cast of interface pointer.
---
dlls/rpcrt4/cstub.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/dlls/rpcrt4/cstub.c b/dlls/rpcrt4/cstub.c
index 838ed03..992c235 100644
--- a/dlls/rpcrt4/cstub.c
+++ b/dlls/rpcrt4/cstub.c
@@ -59,7 +59,7 @@ typedef struct
static inline cstdstubbuffer_delegating_t *impl_from_delegating( IRpcStubBuffer *iface )
{
- return CONTAINING_RECORD(iface, cstdstubbuffer_delegating_t, stub_buffer);
+ return CONTAINING_RECORD((void *)iface, cstdstubbuffer_delegating_t, stub_buffer);
}
HRESULT CStdStubBuffer_Construct(REFIID riid,
--
2.7.1

View File

@@ -1,4 +1,4 @@
From 6c3aa646aff81104eb7783138a71d4bb8cf192a7 Mon Sep 17 00:00:00 2001
From 0ba05ea85f8f2de3c802083340eb3a9ee8df209e Mon Sep 17 00:00:00 2001
From: Christian Costa <titan.costa@gmail.com>
Date: Sat, 13 Feb 2016 15:29:37 +0100
Subject: [PATCH] d3dx9_36: Implement D3DXDisassembleShader. (v2)
@@ -6,11 +6,11 @@ Subject: [PATCH] d3dx9_36: Implement D3DXDisassembleShader. (v2)
Changes in v2 (by Christian Costa):
* More generic code for D3DXDisassembleShader.
---
dlls/d3dx9_36/shader.c | 332 ++++++++++++++++++++++++++++++++++++++++-
1 file changed, 327 insertions(+), 5 deletions(-)
dlls/d3dx9_36/shader.c | 335 ++++++++++++++++++++++++++++++++++++++++-
1 file changed, 329 insertions(+), 6 deletions(-)
diff --git a/dlls/d3dx9_36/shader.c b/dlls/d3dx9_36/shader.c
index fe0f99180ac..54d0b158568 100644
index 1aa75d64dc5..d98345e2288 100644
--- a/dlls/d3dx9_36/shader.c
+++ b/dlls/d3dx9_36/shader.c
@@ -1,6 +1,7 @@
@@ -21,22 +21,27 @@ index fe0f99180ac..54d0b158568 100644
* Copyright 2011 Travis Athougies
*
* This library is free software; you can redistribute it and/or
@@ -18,7 +19,7 @@
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
@@ -19,6 +20,7 @@
*/
-
#include <assert.h>
+#include <stdio.h>
#include "d3dx9_private.h"
#include "d3dcommon.h"
#include "d3dcompiler.h"
@@ -2336,13 +2337,334 @@ HRESULT WINAPI D3DXGetShaderSamplers(const DWORD *byte_code, const char **sample
@@ -2347,13 +2349,334 @@ HRESULT WINAPI D3DXGetShaderSamplers(const DWORD *byte_code, const char **sample
return D3D_OK;
}
-HRESULT WINAPI D3DXDisassembleShader(const DWORD *shader, BOOL colorcode, const char *comments,
- ID3DXBuffer **buffer)
-{
- TRACE("shader %p, colorcode %d, comments %s, buffer %p.\n", shader, colorcode, debugstr_a(comments), buffer);
+static const char *decl_usage[] = { "position", "blendweight", "blendindices", "normal", "psize", "texcoord",
+ "tangent", "binormal", "tessfactor", "positiont", "color" };
+
- return D3DDisassemble(shader, D3DXGetShaderSize(shader), colorcode ? D3D_DISASM_ENABLE_COLOR_CODE : 0,
- comments, (ID3DBlob **)buffer);
+static const char *tex_type[] = { "", "1d", "2d", "cube", "volume" };
+
+static int add_modifier(char *buffer, DWORD param)
@@ -298,11 +303,9 @@ index fe0f99180ac..54d0b158568 100644
+ { D3DSIO_COMMENT, "", 0, instr_comment, 0x0100, 0xFFFF }
+};
+
HRESULT WINAPI D3DXDisassembleShader(const DWORD *shader, BOOL colorcode, const char *comments,
- ID3DXBuffer **buffer)
+HRESULT WINAPI D3DXDisassembleShader(const DWORD *shader, BOOL colorcode, const char *comments,
+ ID3DXBuffer **disassembly)
{
- TRACE("shader %p, colorcode %d, comments %s, buffer %p.\n", shader, colorcode, debugstr_a(comments), buffer);
+{
+ DWORD *ptr = (DWORD *)shader;
+ char *buffer, *buf;
+ UINT capacity = 4096;
@@ -314,9 +317,7 @@ index fe0f99180ac..54d0b158568 100644
+
+ if (!shader || !disassembly)
+ return D3DERR_INVALIDCALL;
- return D3DDisassemble(shader, D3DXGetShaderSize(shader), colorcode ? D3D_DISASM_ENABLE_COLOR_CODE : 0,
- comments, (ID3DBlob **)buffer);
+
+ buf = buffer = HeapAlloc(GetProcessHeap(), 0, capacity);
+ if (!buffer)
+ return E_OUTOFMEMORY;
@@ -370,5 +371,5 @@ index fe0f99180ac..54d0b158568 100644
struct d3dx9_texture_shader
--
2.32.0
2.39.0

View File

@@ -1,4 +1,4 @@
From 3069c254173b551cde229830af857fc5e3abd911 Mon Sep 17 00:00:00 2001
From d3262875b2ce7d2a6746f2139ca00e3d0f13fb33 Mon Sep 17 00:00:00 2001
From: Zebediah Figura <z.figura12@gmail.com>
Date: Wed, 13 Jun 2018 10:44:49 -0500
Subject: [PATCH] configure: Check for sys/eventfd.h, ppoll(), and shm_open().
@@ -12,10 +12,10 @@ Although perhaps we shouldn't since the server doesn't do this.
2 files changed, 17 insertions(+)
diff --git a/configure.ac b/configure.ac
index f4e454ae217..de28e5228e9 100644
index 3be31e40cf6..0a2cdc0dfcd 100644
--- a/configure.ac
+++ b/configure.ac
@@ -464,6 +464,7 @@ AC_CHECK_HEADERS(\
@@ -453,6 +453,7 @@ AC_CHECK_HEADERS(\
sys/cdio.h \
sys/epoll.h \
sys/event.h \
@@ -23,7 +23,7 @@ index f4e454ae217..de28e5228e9 100644
sys/extattr.h \
sys/filio.h \
sys/ipc.h \
@@ -2044,6 +2045,7 @@ AC_CHECK_FUNCS(\
@@ -2024,6 +2025,7 @@ AC_CHECK_FUNCS(\
port_create \
posix_fadvise \
posix_fallocate \
@@ -31,7 +31,7 @@ index f4e454ae217..de28e5228e9 100644
prctl \
proc_pidinfo \
sched_yield \
@@ -2085,6 +2087,12 @@ case $host_os in
@@ -2049,6 +2051,12 @@ case $host_os in
;;
esac
@@ -45,10 +45,10 @@ index f4e454ae217..de28e5228e9 100644
AC_LINK_IFELSE([AC_LANG_PROGRAM(
[[#include <sched.h>]], [[sched_setaffinity(0, 0, 0);]])],[wine_cv_have_sched_setaffinity=yes],[wine_cv_have_sched_setaffinity=no]))
diff --git a/include/config.h.in b/include/config.h.in
index 509dd2869bf..d6b19f96a9c 100644
index fe2fc36a914..8e8c57d711c 100644
--- a/include/config.h.in
+++ b/include/config.h.in
@@ -335,6 +335,9 @@
@@ -309,6 +309,9 @@
/* Define to 1 if you have the `posix_fallocate' function. */
#undef HAVE_POSIX_FALLOCATE
@@ -58,17 +58,17 @@ index 509dd2869bf..d6b19f96a9c 100644
/* Define to 1 if you have the `prctl' function. */
#undef HAVE_PRCTL
@@ -404,6 +407,9 @@
@@ -375,6 +378,9 @@
/* Define to 1 if `interface_id' is a member of `sg_io_hdr_t'. */
#undef HAVE_SG_IO_HDR_T_INTERFACE_ID
+/* Define to 1 if you have the `shm_open' function. */
+#undef HAVE_SHM_OPEN
+
/* Define if sigaddset is supported */
#undef HAVE_SIGADDSET
/* Define to 1 if `si_fd' is a member of `siginfo_t'. */
#undef HAVE_SIGINFO_T_SI_FD
@@ -553,6 +559,9 @@
@@ -510,6 +516,9 @@
/* Define to 1 if you have the <sys/epoll.h> header file. */
#undef HAVE_SYS_EPOLL_H
@@ -79,5 +79,5 @@ index 509dd2869bf..d6b19f96a9c 100644
#undef HAVE_SYS_EVENT_H
--
2.38.1
2.39.0

View File

@@ -1,4 +1,4 @@
From f57e7a06cffc47773c647a10ed4d298b58fbd408 Mon Sep 17 00:00:00 2001
From c1ecb277d4b77d59bd113a530bea556c356f81cc Mon Sep 17 00:00:00 2001
From: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Date: Tue, 9 Jul 2019 14:13:28 +1000
Subject: [PATCH] user32: Do not enumerate the registry in
@@ -13,7 +13,7 @@ not the complete list from the registry.
3 files changed, 36 insertions(+), 33 deletions(-)
diff --git a/dlls/user32/input.c b/dlls/user32/input.c
index c5387cf9212..2507a86e3b6 100644
index 3b0a13842c8..2027ce10358 100644
--- a/dlls/user32/input.c
+++ b/dlls/user32/input.c
@@ -494,7 +494,6 @@ BOOL WINAPI UnloadKeyboardLayout( HKL layout )
@@ -21,14 +21,14 @@ index c5387cf9212..2507a86e3b6 100644
}
-
/***********************************************************************
* EnableMouseInPointer (USER32.@)
*/
static DWORD CALLBACK devnotify_window_callback(HANDLE handle, DWORD flags, DEV_BROADCAST_HDR *header)
{
SendMessageTimeoutW(handle, WM_DEVICECHANGE, flags, (LPARAM)header, SMTO_ABORTIFHUNG, 2000, NULL);
diff --git a/dlls/user32/tests/input.c b/dlls/user32/tests/input.c
index bf913b8e6a6..8ac46bedc71 100644
index f8b40099091..6551367788c 100644
--- a/dlls/user32/tests/input.c
+++ b/dlls/user32/tests/input.c
@@ -4837,6 +4837,40 @@ static void test_EnableMouseInPointer( char **argv, BOOL enable )
@@ -4875,6 +4875,40 @@ static void test_EnableMouseInPointer( char **argv, BOOL enable )
CloseHandle( info.hProcess );
}
@@ -69,7 +69,7 @@ index bf913b8e6a6..8ac46bedc71 100644
START_TEST(input)
{
char **argv;
@@ -4887,6 +4921,7 @@ START_TEST(input)
@@ -4925,6 +4959,7 @@ START_TEST(input)
test_GetRawInputBuffer();
test_RegisterRawInputDevices();
test_rawinput(argv[0]);
@@ -78,7 +78,7 @@ index bf913b8e6a6..8ac46bedc71 100644
if(pGetMouseMovePointsEx)
diff --git a/dlls/win32u/input.c b/dlls/win32u/input.c
index fd16d03f733..fb452843803 100644
index 36f7404b296..bdbd24b5695 100644
--- a/dlls/win32u/input.c
+++ b/dlls/win32u/input.c
@@ -934,11 +934,7 @@ HKL WINAPI NtUserActivateKeyboardLayout( HKL layout, UINT flags )
@@ -129,5 +129,5 @@ index fd16d03f733..fb452843803 100644
return count;
--
2.39.0
2.39.1

View File

@@ -0,0 +1,114 @@
From b6db59b7d1a7ca08a2cb3c0fb52145fa89cd2e17 Mon Sep 17 00:00:00 2001
From: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Date: Thu, 5 Jan 2023 14:36:31 +1100
Subject: [PATCH 2/4] msxml3: Implement IXMLHTTPRequest3 SetProperty
---
dlls/msxml3/httprequest.c | 77 ++++++++++++++++++++++++++++++++++++++-
1 file changed, 75 insertions(+), 2 deletions(-)
diff --git a/dlls/msxml3/httprequest.c b/dlls/msxml3/httprequest.c
index 98dd23c9fbb..d8360680411 100644
--- a/dlls/msxml3/httprequest.c
+++ b/dlls/msxml3/httprequest.c
@@ -102,6 +102,21 @@ typedef struct
/* IObjectSafety */
DWORD safeopt;
+
+ /* Properties */
+ DWORD no_prompt;
+ DWORD no_auth;
+ DWORD timeout;
+ BOOL no_headeres;
+ BOOL redirect;
+ BOOL cache;
+ BOOL extended;
+ BOOL query_utf8;
+ BOOL ignore_errors;
+ BOOL threshold;
+ DWORD enterrprised_id;
+ DWORD max_connections;
+
} httprequest;
typedef struct
@@ -2230,8 +2245,52 @@ static HRESULT WINAPI xml_http_request_2_SetCustomResponseStream(IXMLHTTPRequest
static HRESULT WINAPI xml_http_request_2_SetProperty(IXMLHTTPRequest3 *iface, XHR_PROPERTY property, ULONGLONG value)
{
struct xml_http_request_2 *This = impl_from_IXMLHTTPRequest3(iface);
- FIXME("(%p)->(%#x %s) stub!\n", This, property, wine_dbgstr_longlong( value ));
- return E_NOTIMPL;
+
+ TRACE("(%p)->(%#x %s) stub!\n", This, property, wine_dbgstr_longlong( value ));
+
+ switch (property)
+ {
+ case XHR_PROP_NO_CRED_PROMPT:
+ This->req.no_prompt = value;
+ break;
+ case XHR_PROP_NO_AUTH:
+ This->req.no_auth = value;
+ break;
+ case XHR_PROP_TIMEOUT:
+ This->req.timeout = value;
+ break;
+ case XHR_PROP_NO_DEFAULT_HEADERS:
+ This->req.no_headeres = value != 0;
+ break;
+ case XHR_PROP_REPORT_REDIRECT_STATUS:
+ This->req.redirect = value != 0;
+ break;
+ case XHR_PROP_NO_CACHE:
+ This->req.cache = value != 0;
+ break;
+ case XHR_PROP_EXTENDED_ERROR:
+ This->req.extended = value != 0;
+ break;
+ case XHR_PROP_QUERY_STRING_UTF8:
+ This->req.query_utf8 = value != 0;
+ break;
+ case XHR_PROP_IGNORE_CERT_ERRORS:
+ This->req.ignore_errors = value != 0;
+ break;
+ case XHR_PROP_ONDATA_THRESHOLD:
+ This->req.threshold = value;
+ break;
+ case XHR_PROP_SET_ENTERPRISEID:
+ This->req.enterrprised_id = value;
+ break;
+ case XHR_PROP_MAX_CONNECTIONS:
+ This->req.max_connections = value;
+ break;
+ default:
+ WARN("Invalid property %#x\n", property);
+ return E_INVALIDARG;
+ }
+ return S_OK;
}
static HRESULT WINAPI xml_http_request_2_SetRequestHeader(IXMLHTTPRequest3 *iface,
@@ -2551,6 +2610,20 @@ static void init_httprequest(httprequest *req)
req->site = NULL;
req->safeopt = 0;
+
+ /* Properties */
+ req->no_prompt = XHR_CRED_PROMPT_ALL;
+ req->no_auth = XHR_AUTH_ALL;
+ req->timeout = 0xFFFFFFFF;
+ req->no_headeres = FALSE;
+ req->redirect = FALSE;
+ req->cache = FALSE;
+ req->extended = FALSE;
+ req->query_utf8 = FALSE;;
+ req->ignore_errors = FALSE;;
+ req->threshold = 0x100;
+ req->enterrprised_id = 0;
+ req->max_connections = 10;
}
HRESULT XMLHTTPRequest_create(void **obj)
--
2.39.0

View File

@@ -0,0 +1,91 @@
From ca9c7d377e3e5e9689d67fbb9622ac1554442cdc Mon Sep 17 00:00:00 2001
From: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Date: Thu, 5 Jan 2023 14:36:08 +1100
Subject: [PATCH 3/4] msxml3: Copy body size to request object
Dont assume that the data needs to be convert
NOTE: should use SetProperty value.
---
dlls/msxml3/httprequest.c | 44 ++++++++++++++++++++++++++-------------
1 file changed, 30 insertions(+), 14 deletions(-)
diff --git a/dlls/msxml3/httprequest.c b/dlls/msxml3/httprequest.c
index d8360680411..48ed444576e 100644
--- a/dlls/msxml3/httprequest.c
+++ b/dlls/msxml3/httprequest.c
@@ -117,6 +117,7 @@ typedef struct
DWORD enterrprised_id;
DWORD max_connections;
+ ULONGLONG request_body_size;
} httprequest;
typedef struct
@@ -737,27 +738,40 @@ static HRESULT BindStatusCallback_create(httprequest* This, BindStatusCallback *
{
case VT_BSTR:
{
- int len = SysStringLen(V_BSTR(body));
- const WCHAR *str = V_BSTR(body);
- UINT i, cp = CP_ACP;
+ int len = This->request_body_size ? This->request_body_size : SysStringLen(V_BSTR(body));
- for (i = 0; i < len; i++)
+ if(!This->request_body_size)
{
- if (str[i] > 127)
+ const WCHAR *str = V_BSTR(body);
+ UINT i, cp = CP_ACP;
+
+ for (i = 0; i < len; i++)
+ {
+ if (str[i] > 127)
+ {
+ cp = CP_UTF8;
+ break;
+ }
+ }
+ size = WideCharToMultiByte(cp, 0, str, len, NULL, 0, NULL, NULL);
+ if (!(ptr = heap_alloc(size)))
{
- cp = CP_UTF8;
- break;
+ heap_free(bsc);
+ return E_OUTOFMEMORY;
}
+ WideCharToMultiByte(cp, 0, str, len, ptr, size, NULL, NULL);
+ if (cp == CP_UTF8) This->use_utf8_content = TRUE;
}
-
- size = WideCharToMultiByte(cp, 0, str, len, NULL, 0, NULL, NULL);
- if (!(ptr = heap_alloc(size)))
+ else
{
- heap_free(bsc);
- return E_OUTOFMEMORY;
+ size = This->request_body_size;
+ if (!(ptr = heap_alloc(size)))
+ {
+ heap_free(bsc);
+ return E_OUTOFMEMORY;
+ }
+ memcpy(ptr, V_BSTR(body), size);
}
- WideCharToMultiByte(cp, 0, str, len, ptr, size, NULL, NULL);
- if (cp == CP_UTF8) This->use_utf8_content = TRUE;
break;
}
case VT_ARRAY|VT_UI1:
@@ -2436,6 +2450,8 @@ static HRESULT WINAPI xml_http_request_2_IRtwqAsyncCallback_Invoke(IRtwqAsyncCal
ISequentialStream_Release(This->request_body);
This->request_body = NULL;
+
+ This->req.request_body_size = This->request_body_size;
}
hr = httprequest_send(&This->req, body_v);
--
2.39.0

View File

@@ -0,0 +1,26 @@
From a4077e33ab9e41927433479a9a8af9ed11990c04 Mon Sep 17 00:00:00 2001
From: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Date: Thu, 12 Jan 2023 08:21:48 +1100
Subject: [PATCH 4/4] msxml3: Correct xml_http_request_2_GetResponseHeader
---
dlls/msxml3/httprequest.c | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/dlls/msxml3/httprequest.c b/dlls/msxml3/httprequest.c
index 48ed444576e..111ac39f62f 100644
--- a/dlls/msxml3/httprequest.c
+++ b/dlls/msxml3/httprequest.c
@@ -2339,8 +2339,7 @@ static HRESULT WINAPI xml_http_request_2_GetResponseHeader(IXMLHTTPRequest3 *ifa
TRACE("(%p)->(%s %p)\n", This, debugstr_w(header), value);
- if (FAILED(hr = httprequest_getResponseHeader(&This->req, (BSTR)header, value)))
- return hr;
+ hr = httprequest_getResponseHeader(&This->req, (BSTR)header, value);
#define E_FILE_NOT_FOUND _HRESULT_TYPEDEF_(0x80070002)
--
2.39.0

View File

@@ -1,90 +0,0 @@
From 7acf9c0e6c7f4bf86b1946778366b529a42fa660 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Michael=20M=C3=BCller?= <michael@fds-team.de>
Date: Thu, 1 Jun 2017 06:04:53 +0200
Subject: [PATCH] ntdll: Fix holes in ELF mappings. (v2)
Based on a patch by Andrew Wesie.
---
dlls/ntdll/unix/virtual.c | 23 +++++++++++++++++++++++
dlls/psapi/tests/psapi_main.c | 14 +++++++++++++-
2 files changed, 36 insertions(+), 1 deletion(-)
diff --git a/dlls/ntdll/unix/virtual.c b/dlls/ntdll/unix/virtual.c
index 0c1c91750ea..c4fcf43543f 100644
--- a/dlls/ntdll/unix/virtual.c
+++ b/dlls/ntdll/unix/virtual.c
@@ -1210,6 +1210,16 @@ static inline BOOL is_write_watch_range( const void *addr, size_t size )
}
+/***********************************************************************
+ * is_system_range
+ */
+static inline BOOL is_system_range( const void *addr, size_t size )
+{
+ struct file_view *view = find_view( addr, size );
+ return view && (view->protect & VPROT_SYSTEM);
+}
+
+
/***********************************************************************
* find_view_range
*
@@ -3416,6 +3426,19 @@ NTSTATUS virtual_handle_fault( void *addr, DWORD err, void *stack )
/* ignore fault if page is writable now */
if (get_unix_prot( get_page_vprot( page ) ) & PROT_WRITE) ret = STATUS_SUCCESS;
}
+ else if (!err && (get_unix_prot( vprot ) & PROT_READ) && is_system_range( page, page_size ))
+ {
+ int unix_prot = get_unix_prot( vprot );
+ unsigned char vec;
+
+ mprotect_range( page, page_size, 0, 0 );
+ if (!mincore( page, page_size, &vec ) && (vec & 1))
+ ret = STATUS_SUCCESS;
+ else if (anon_mmap_fixed( page, page_size, unix_prot, 0 ) == page)
+ ret = STATUS_SUCCESS;
+ else
+ set_page_vprot_bits( page, page_size, 0, VPROT_READ | VPROT_EXEC );
+ }
mutex_unlock( &virtual_mutex );
return ret;
}
diff --git a/dlls/psapi/tests/psapi_main.c b/dlls/psapi/tests/psapi_main.c
index 519e39c3df0..c29168646e8 100644
--- a/dlls/psapi/tests/psapi_main.c
+++ b/dlls/psapi/tests/psapi_main.c
@@ -194,6 +194,7 @@ static void test_EnumProcessModules(void)
static void test_GetModuleInformation(void)
{
HMODULE hMod = GetModuleHandleA(NULL);
+ DWORD *tmp, counter = 0;
MODULEINFO info;
DWORD ret;
@@ -213,10 +214,21 @@ static void test_GetModuleInformation(void)
GetModuleInformation(hpQV, hMod, &info, sizeof(info)-1);
ok(GetLastError() == ERROR_INSUFFICIENT_BUFFER, "expected error=ERROR_INSUFFICIENT_BUFFER but got %ld\n", GetLastError());
- SetLastError(0xdeadbeef);
ret = GetModuleInformation(hpQV, hMod, &info, sizeof(info));
ok(ret == 1, "failed with %ld\n", GetLastError());
ok(info.lpBaseOfDll == hMod, "lpBaseOfDll=%p hMod=%p\n", info.lpBaseOfDll, hMod);
+
+ hMod = LoadLibraryA("shell32.dll");
+ ok(hMod != NULL, "Failed to load shell32.dll, error: %lu\n", GetLastError());
+
+ ret = GetModuleInformation(hpQV, hMod, &info, sizeof(info));
+ ok(ret == 1, "failed with %lu\n", GetLastError());
+ info.SizeOfImage /= sizeof(DWORD);
+ for (tmp = (DWORD *)hMod; info.SizeOfImage; info.SizeOfImage--)
+ counter ^= *tmp++;
+ trace("xor of shell32: %08lx\n", counter);
+
+ FreeLibrary(hMod);
}
static BOOL check_with_margin(SIZE_T perf, SIZE_T sysperf, int margin)
--
2.34.1

View File

@@ -1,2 +0,0 @@
Fixes: [44650] Fix holes in ELF mappings
Depends: ntdll-WRITECOPY

View File

@@ -0,0 +1,4 @@
# Originally written for Proton games, specifically "King under the Mountain"
# and "Halo Infinite". Neither have been tested with upstream Wine. Added to
# wine-staging primarly because ntdll-ForceBottomUpAlloc touches the same area.
Depends: ntdll-WRITECOPY

View File

@@ -1,4 +1,4 @@
From 7e1c63548513ec95978c5cbc428555ac5ed7c1d2 Mon Sep 17 00:00:00 2001
From 3c8ddcd9f29524479004800c91a39ec04456bd08 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Michael=20M=C3=BCller?= <michael@fds-team.de>
Date: Sun, 17 Jan 2016 00:50:50 +0100
Subject: [PATCH] ntdll/tests: Add basic tests for RtlQueryPackageIdentity.
@@ -20,7 +20,7 @@ index 90deb5865f8..428ebde23b3 100644
C_SRCS = \
atom.c \
diff --git a/dlls/ntdll/tests/rtl.c b/dlls/ntdll/tests/rtl.c
index 1e5e8c2580c..3690402c268 100644
index a7c43a46e07..9088d222b47 100644
--- a/dlls/ntdll/tests/rtl.c
+++ b/dlls/ntdll/tests/rtl.c
@@ -28,6 +28,9 @@
@@ -53,7 +53,7 @@ index 1e5e8c2580c..3690402c268 100644
pLdrRegisterDllNotification = (void *)GetProcAddress(hntdll, "LdrRegisterDllNotification");
pLdrUnregisterDllNotification = (void *)GetProcAddress(hntdll, "LdrUnregisterDllNotification");
}
@@ -3775,6 +3784,76 @@ static void test_RtlFirstFreeAce(void)
@@ -3788,6 +3797,76 @@ static void test_RtlFirstFreeAce(void)
HeapFree(GetProcessHeap(), 0, acl);
}
@@ -127,10 +127,10 @@ index 1e5e8c2580c..3690402c268 100644
+ CoUninitialize();
+}
+
START_TEST(rtl)
static void test_TlsIndex(void)
{
InitFunctionPtrs();
@@ -3814,6 +3893,7 @@ START_TEST(rtl)
LIST_ENTRY *root = &NtCurrentTeb()->Peb->LdrData->InLoadOrderModuleList;
@@ -3852,6 +3931,7 @@ START_TEST(rtl)
test_RtlInitializeCriticalSectionEx();
test_RtlLeaveCriticalSection();
test_LdrEnumerateLoadedModules();

View File

@@ -51,13 +51,13 @@ usage()
# Get the upstream commit sha
upstream_commit()
{
echo "9e33e4f4a26091fc02106a1cd874f77098b99883"
echo "a4ed65d57721adade08440b9cabf44e3394fc3ad"
}
# Show version information
version()
{
echo "Wine Staging 8.0-rc3"
echo "Wine Staging 8.1"
echo "Copyright (C) 2014-2019 the Wine Staging project authors."
echo "Copyright (C) 2018-2020 Alistair Leslie-Hughes"
echo ""
@@ -130,7 +130,6 @@ patch_enable_all ()
enable_msi_msi_vcl_get_cost="$1"
enable_msxml3_FreeThreadedXMLHTTP60="$1"
enable_ntdll_APC_Performance="$1"
enable_ntdll_Builtin_Prot="$1"
enable_ntdll_CriticalSection="$1"
enable_ntdll_Exception="$1"
enable_ntdll_ForceBottomUpAlloc="$1"
@@ -402,9 +401,6 @@ patch_enable ()
ntdll-APC_Performance)
enable_ntdll_APC_Performance="$2"
;;
ntdll-Builtin_Prot)
enable_ntdll_Builtin_Prot="$2"
;;
ntdll-CriticalSection)
enable_ntdll_CriticalSection="$2"
;;
@@ -1203,9 +1199,9 @@ if test "$enable_ntdll_ForceBottomUpAlloc" -eq 1; then
enable_ntdll_Placeholders=1
fi
if test "$enable_ntdll_Builtin_Prot" -eq 1; then
if test "$enable_ntdll_Placeholders" -eq 1; then
if test "$enable_ntdll_WRITECOPY" -gt 1; then
abort "Patchset ntdll-WRITECOPY disabled, but ntdll-Builtin_Prot depends on that."
abort "Patchset ntdll-WRITECOPY disabled, but ntdll-Placeholders depends on that."
fi
enable_ntdll_WRITECOPY=1
fi
@@ -1257,9 +1253,9 @@ fi
# | * dlls/bcrypt/gnutls.c, dlls/d2d1/bitmap.c, dlls/d2d1/brush.c, dlls/d2d1/dc_render_target.c, dlls/d2d1/geometry.c,
# | dlls/d2d1/hwnd_render_target.c, dlls/d2d1/state_block.c, dlls/d3d10/effect.c, dlls/d3d11/view.c, dlls/d3d8/texture.c,
# | dlls/d3d9/texture.c, dlls/ddraw/viewport.c, dlls/dwrite/font.c, dlls/dxgi/output.c, dlls/msctf/range.c,
# | dlls/msxml3/schema.c, dlls/ntdll/unix/virtual.c, dlls/oleaut32/oleaut.c, dlls/rpcrt4/cstub.c,
# | dlls/rpcrt4/ndr_marshall.c, dlls/rpcrt4/ndr_typelib.c, dlls/vbscript/vbdisp.c, dlls/wbemdisp/locator.c,
# | dlls/windowscodecs/info.c, dlls/wsdapi/msgparams.c, include/wine/list.h, include/wine/rbtree.h, include/winnt.h
# | dlls/msxml3/schema.c, dlls/ntdll/unix/virtual.c, dlls/oleaut32/oleaut.c, dlls/rpcrt4/ndr_marshall.c,
# | dlls/rpcrt4/ndr_typelib.c, dlls/vbscript/vbdisp.c, dlls/wbemdisp/locator.c, dlls/windowscodecs/info.c,
# | dlls/wsdapi/msgparams.c, include/wine/list.h, include/wine/rbtree.h, include/winnt.h
# |
if test "$enable_Compiler_Warnings" -eq 1; then
patch_apply Compiler_Warnings/0001-windowscodecs-Avoid-implicit-cast-of-interface-point.patch
@@ -1271,7 +1267,6 @@ if test "$enable_Compiler_Warnings" -eq 1; then
patch_apply Compiler_Warnings/0026-dwrite-Avoid-implicit-cast-of-interface-pointer.patch
patch_apply Compiler_Warnings/0027-msxml3-Avoid-implicit-cast-of-interface-pointer.patch
patch_apply Compiler_Warnings/0028-oleaut32-Avoid-implicit-cast-of-interface-pointer.patch
patch_apply Compiler_Warnings/0029-rpcrt4-Avoid-implicit-cast-of-interface-pointer.patch
patch_apply Compiler_Warnings/0030-vbscript-Avoid-implicit-cast-of-interface-pointer.patch
patch_apply Compiler_Warnings/0031-include-Check-element-type-in-CONTAINING_RECORD-and-.patch
patch_apply Compiler_Warnings/0032-wsdapi-Avoid-implicit-cast-of-interface-pointer.patch
@@ -2047,6 +2042,9 @@ fi
if test "$enable_msxml3_FreeThreadedXMLHTTP60" -eq 1; then
patch_apply msxml3-FreeThreadedXMLHTTP60/0001-include-Remove-interfaces-already-define-in-msxml6.i.patch
patch_apply msxml3-FreeThreadedXMLHTTP60/0003-msxml3-Implement-FreeThreadedXMLHTTP60.patch
patch_apply msxml3-FreeThreadedXMLHTTP60/0005-msxml3-Implement-IXMLHTTPRequest3-SetProperty.patch
patch_apply msxml3-FreeThreadedXMLHTTP60/0006-msxml3-Copy-body-size-to-request-object.patch
patch_apply msxml3-FreeThreadedXMLHTTP60/0007-msxml3-Correct-xml_http_request_2_GetResponseHeader.patch
fi
# Patchset ntdll-APC_Performance
@@ -2058,43 +2056,6 @@ if test "$enable_ntdll_APC_Performance" -eq 1; then
patch_apply ntdll-APC_Performance/0001-ntdll-Reuse-old-async-fileio-structures-if-possible.patch
fi
# Patchset ntdll-WRITECOPY
# |
# | This patchset fixes the following Wine bugs:
# | * [#29384] Multiple applications expect correct handling of WRITECOPY memory protection (Voobly fails to launch Age of
# | Empires II, MSYS2)
# |
# | Modified files:
# | * dlls/kernel32/tests/virtual.c, dlls/ntdll/unix/loader.c, dlls/ntdll/unix/server.c, dlls/ntdll/unix/signal_arm.c,
# | dlls/ntdll/unix/signal_arm64.c, dlls/ntdll/unix/signal_i386.c, dlls/ntdll/unix/signal_x86_64.c,
# | dlls/ntdll/unix/unix_private.h, dlls/ntdll/unix/virtual.c, dlls/psapi/tests/psapi_main.c
# |
if test "$enable_ntdll_WRITECOPY" -eq 1; then
patch_apply ntdll-WRITECOPY/0001-ntdll-Trigger-write-watches-before-passing-userdata-.patch
patch_apply ntdll-WRITECOPY/0003-ntdll-Setup-a-temporary-signal-handler-during-proces.patch
patch_apply ntdll-WRITECOPY/0004-ntdll-Properly-handle-PAGE_WRITECOPY-protection.-try.patch
patch_apply ntdll-WRITECOPY/0005-ntdll-Track-if-a-WRITECOPY-page-has-been-modified.patch
patch_apply ntdll-WRITECOPY/0006-ntdll-Support-WRITECOPY-on-x64.patch
patch_apply ntdll-WRITECOPY/0007-ntdll-Report-unmodified-WRITECOPY-pages-as-shared.patch
patch_apply ntdll-WRITECOPY/0008-ntdll-Fallback-to-copy-pages-for-WRITECOPY.patch
patch_apply ntdll-WRITECOPY/0009-kernel32-tests-psapi-tests-Update-tests.patch
fi
# Patchset ntdll-Builtin_Prot
# |
# | This patchset has the following (direct or indirect) dependencies:
# | * ntdll-WRITECOPY
# |
# | This patchset fixes the following Wine bugs:
# | * [#44650] Fix holes in ELF mappings
# |
# | Modified files:
# | * dlls/ntdll/unix/virtual.c, dlls/psapi/tests/psapi_main.c
# |
if test "$enable_ntdll_Builtin_Prot" -eq 1; then
patch_apply ntdll-Builtin_Prot/0001-ntdll-Fix-holes-in-ELF-mappings.patch
fi
# Patchset ntdll-CriticalSection
# |
# | Modified files:
@@ -2118,8 +2079,33 @@ if test "$enable_ntdll_Exception" -eq 1; then
patch_apply ntdll-Exception/0002-ntdll-OutputDebugString-should-throw-the-exception-a.patch
fi
# Patchset ntdll-WRITECOPY
# |
# | This patchset fixes the following Wine bugs:
# | * [#29384] Multiple applications expect correct handling of WRITECOPY memory protection (Voobly fails to launch Age of
# | Empires II, MSYS2)
# |
# | Modified files:
# | * dlls/kernel32/tests/virtual.c, dlls/ntdll/unix/loader.c, dlls/ntdll/unix/server.c, dlls/ntdll/unix/signal_arm.c,
# | dlls/ntdll/unix/signal_arm64.c, dlls/ntdll/unix/signal_i386.c, dlls/ntdll/unix/signal_x86_64.c,
# | dlls/ntdll/unix/unix_private.h, dlls/ntdll/unix/virtual.c, dlls/psapi/tests/psapi_main.c
# |
if test "$enable_ntdll_WRITECOPY" -eq 1; then
patch_apply ntdll-WRITECOPY/0001-ntdll-Trigger-write-watches-before-passing-userdata-.patch
patch_apply ntdll-WRITECOPY/0003-ntdll-Setup-a-temporary-signal-handler-during-proces.patch
patch_apply ntdll-WRITECOPY/0004-ntdll-Properly-handle-PAGE_WRITECOPY-protection.-try.patch
patch_apply ntdll-WRITECOPY/0005-ntdll-Track-if-a-WRITECOPY-page-has-been-modified.patch
patch_apply ntdll-WRITECOPY/0006-ntdll-Support-WRITECOPY-on-x64.patch
patch_apply ntdll-WRITECOPY/0007-ntdll-Report-unmodified-WRITECOPY-pages-as-shared.patch
patch_apply ntdll-WRITECOPY/0008-ntdll-Fallback-to-copy-pages-for-WRITECOPY.patch
patch_apply ntdll-WRITECOPY/0009-kernel32-tests-psapi-tests-Update-tests.patch
fi
# Patchset ntdll-Placeholders
# |
# | This patchset has the following (direct or indirect) dependencies:
# | * ntdll-WRITECOPY
# |
# | Modified files:
# | * dlls/kernelbase/memory.c, dlls/kernelbase/tests/process.c, dlls/ntdll/tests/virtual.c, dlls/ntdll/unix/server.c,
# | dlls/ntdll/unix/virtual.c, server/protocol.def
@@ -2147,7 +2133,7 @@ fi
# Patchset ntdll-ForceBottomUpAlloc
# |
# | This patchset has the following (direct or indirect) dependencies:
# | * ntdll-Placeholders
# | * ntdll-WRITECOPY, ntdll-Placeholders
# |
# | This patchset fixes the following Wine bugs:
# | * [#48175] AION (64 bit) - crashes in crysystem.dll.CryFree() due to high memory pointers allocated

View File

@@ -1,4 +1,4 @@
From c5e833ecb1f1e4aef1b146d22230b39459d6f459 Mon Sep 17 00:00:00 2001
From c3fe536e57885944c18d4146edff7611086cfcb6 Mon Sep 17 00:00:00 2001
From: Esdras Tarsis <esdrastarsis@gmail.com>
Date: Wed, 2 Sep 2020 23:41:19 -0300
Subject: [PATCH] windows.networking.connectivity: Add stub dll.
@@ -16,17 +16,17 @@ Signed-off-by: Esdras Tarsis <esdrastarsis@gmail.com>
create mode 100644 dlls/windows.networking.connectivity/windows.networking.connectivity_main.c
diff --git a/configure.ac b/configure.ac
index 93d32a2dfae..125784d0396 100644
index 9ff7c5e8914..51317b85745 100644
--- a/configure.ac
+++ b/configure.ac
@@ -3201,6 +3201,7 @@ WINE_CONFIG_MAKEFILE(dlls/windows.media.speech/tests)
@@ -3125,6 +3125,7 @@ WINE_CONFIG_MAKEFILE(dlls/windows.media.speech/tests)
WINE_CONFIG_MAKEFILE(dlls/windows.media)
WINE_CONFIG_MAKEFILE(dlls/windows.media/tests)
WINE_CONFIG_MAKEFILE(dlls/windows.networking)
+WINE_CONFIG_MAKEFILE(dlls/windows.networking.connectivity)
WINE_CONFIG_MAKEFILE(dlls/windows.system.profile.systemmanufacturers)
WINE_CONFIG_MAKEFILE(dlls/windows.system.profile.systemmanufacturers/tests)
WINE_CONFIG_MAKEFILE(dlls/windowscodecs)
WINE_CONFIG_MAKEFILE(dlls/windowscodecs/tests)
WINE_CONFIG_MAKEFILE(dlls/windowscodecsext)
diff --git a/dlls/windows.networking.connectivity/Makefile.in b/dlls/windows.networking.connectivity/Makefile.in
new file mode 100644
index 00000000000..6fc24a72feb
@@ -93,5 +93,5 @@ index 00000000000..96ff0ea5af2
+}
\ No newline at end of file
--
2.38.1
2.39.0

View File

@@ -1,7 +1,7 @@
From 4d2c03539d7316d75b56fd8a2c852a9013234f0c Mon Sep 17 00:00:00 2001
From c08e405870abe35e11eb3895a601da3e438bc84b Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Michael=20M=C3=BCller?= <michael@fds-team.de>
Date: Sun, 28 Sep 2014 21:20:52 +0200
Subject: winex11.drv: Only warn about used contexts in wglShareLists.
Subject: [PATCH] winex11.drv: Only warn about used contexts in wglShareLists.
---
dlls/opengl32/tests/opengl.c | 2 +-
@@ -9,10 +9,10 @@ Subject: winex11.drv: Only warn about used contexts in wglShareLists.
2 files changed, 5 insertions(+), 7 deletions(-)
diff --git a/dlls/opengl32/tests/opengl.c b/dlls/opengl32/tests/opengl.c
index e5e1507..5454d3a 100644
index 42c2626a2c2..bee429ef2ad 100644
--- a/dlls/opengl32/tests/opengl.c
+++ b/dlls/opengl32/tests/opengl.c
@@ -365,7 +365,7 @@ static void test_sharelists(HDC winhdc)
@@ -564,7 +564,7 @@ static void test_sharelists(HDC winhdc)
res = wglMakeCurrent(winhdc, hglrc2);
ok(res, "Make current failed\n");
res = wglShareLists(hglrc1, hglrc2);
@@ -22,22 +22,22 @@ index e5e1507..5454d3a 100644
wglDeleteContext(hglrc2);
}
diff --git a/dlls/winex11.drv/opengl.c b/dlls/winex11.drv/opengl.c
index 0f7534e..39929f2 100644
index d7fc123bddd..eab44e76126 100644
--- a/dlls/winex11.drv/opengl.c
+++ b/dlls/winex11.drv/opengl.c
@@ -1959,18 +1959,16 @@ static BOOL glxdrv_wglShareLists(struct wgl_context *org, struct wgl_context *de
@@ -1934,18 +1934,16 @@ static BOOL glxdrv_wglShareLists(struct wgl_context *org, struct wgl_context *de
* current or when it hasn't shared display lists before.
*/
- if((org->has_been_current && dest->has_been_current) || dest->has_been_current)
- if(dest->has_been_current)
- {
- ERR("Could not share display lists, one of the contexts has been current already !\n");
- ERR("Could not share display lists because the destination context has already been current\n");
- return FALSE;
- }
- else if(dest->sharing)
+ if(dest->sharing)
{
ERR("Could not share display lists because hglrc2 has already shared lists before\n");
ERR("Could not share display lists because the destination context has already shared lists\n");
return FALSE;
}
else
@@ -49,5 +49,5 @@ index 0f7534e..39929f2 100644
pglXDestroyContext(gdi_display, dest->ctx);
dest->ctx = create_glxcontext(gdi_display, dest, org->ctx);
--
2.8.0
2.39.0

View File

@@ -1,2 +1,2 @@
Wine Staging 8.0-rc3
Wine Staging 8.1

View File

@@ -1 +1 @@
9e33e4f4a26091fc02106a1cd874f77098b99883
a4ed65d57721adade08440b9cabf44e3394fc3ad