Compare commits

..

9 Commits

Author SHA1 Message Date
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
Alistair Leslie-Hughes
dc27f103e5 Release v8.0-rc3 2023-01-08 13:13:51 +11:00
Paul Gofman
d1bde95011 Updated ntdll-NtDevicePath patchset. 2023-01-06 16:50:07 -06:00
Alistair Leslie-Hughes
90d6184697 Updated winex11-_NET_ACTIVE_WINDOW patchset
Thanks Gabriel Ivăncescu.
2023-01-06 08:02:06 +11:00
Alistair Leslie-Hughes
d10f51a658 Updated ntdll-Junction_Points patchset
Reorder patch to ensure regression testing can be performed.
2022-12-29 10:15:03 +11:00
Dean M Greer
bad4d30c2c macOS.yml: Skip running 'brew update' 2022-12-24 17:57:12 +00:00
12 changed files with 306 additions and 21 deletions

View File

@@ -14,7 +14,6 @@ jobs:
- name: Install dependencies
run: |
brew update
brew install --cask xquartz
brew install bison \
gphoto2 \

View File

@@ -0,0 +1,37 @@
From 5aa6c213ced971079f236acfe25437f5d49cebbf Mon Sep 17 00:00:00 2001
From: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Date: Tue, 10 Jan 2023 16:22:14 +1100
Subject: [PATCH 1/4] include: Add _XHR enum values
---
include/msxml6.idl | 14 ++++++++++++++
1 file changed, 14 insertions(+)
diff --git a/include/msxml6.idl b/include/msxml6.idl
index 4672ae80626..aa03a8a310a 100644
--- a/include/msxml6.idl
+++ b/include/msxml6.idl
@@ -256,6 +256,20 @@ typedef enum _SCHEMATYPEVARIETY
} SCHEMATYPEVARIETY;
cpp_quote("#endif /* __msxml_som_enums__ */")
+typedef [v1_enum] enum _XHR_CRED_PROMPT
+{
+ XHR_CRED_PROMPT_ALL = 0x0,
+ XHR_CRED_PROMPT_NONE = 0x1,
+ XHR_CRED_PROMPT_PROXY = 0x2,
+} XHR_CRED_PROMPT;
+
+typedef [v1_enum] enum _XHR_AUTH
+{
+ XHR_AUTH_ALL = 0x0,
+ XHR_AUTH_NONE = 0x1,
+ XHR_AUTH_PROXY = 0x2,
+} XHR_AUTH;
+
typedef [v1_enum] enum _XHR_PROPERTY
{
XHR_PROP_NO_CRED_PROMPT,
--
2.39.0

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

@@ -194,8 +194,8 @@ index 67e0c6f0b40..25a03ef84f1 100644
+ else
+ return nt_to_unix_file_name_internal( attr, name_ret, disposition );
+
+ name_len = sizeof(dosprefixW) + wcslen(prefix) * sizeof(WCHAR) +
+ nameW->Length - offset * sizeof(WCHAR) + sizeof(WCHAR);
+ name_len = sizeof(dosprefixW) + wcslen(prefix) * sizeof(WCHAR)
+ + sizeof(WCHAR) /* '\\' */ + nameW->Length - offset * sizeof(WCHAR) + sizeof(WCHAR);
+ if (!(name = malloc( name_len )))
+ return STATUS_NO_MEMORY;
+

View File

@@ -51,13 +51,13 @@ usage()
# Get the upstream commit sha
upstream_commit()
{
echo "2d7d84a65ace4c669698740c11cab5dbf127a0c6"
echo "6677c044abb711f423fadfb61f2c9a37da6ff686"
}
# Show version information
version()
{
echo "Wine Staging 8.0-rc2"
echo "Wine Staging 8.0"
echo "Copyright (C) 2014-2019 the Wine Staging project authors."
echo "Copyright (C) 2018-2020 Alistair Leslie-Hughes"
echo ""
@@ -1636,6 +1636,7 @@ fi
# | server/file.c, server/protocol.def
# |
if test "$enable_ntdll_Junction_Points" -eq 1; then
patch_apply ntdll-Junction_Points/0000-include-Add-ntifs.h.patch
patch_apply ntdll-Junction_Points/0001-ntdll-Add-support-for-creating-reparse-points.patch
patch_apply ntdll-Junction_Points/0002-ntdll-Add-support-for-reading-reparse-points.patch
patch_apply ntdll-Junction_Points/0003-ntdll-Add-support-for-deleting-reparse-points.patch
@@ -1661,7 +1662,6 @@ if test "$enable_ntdll_Junction_Points" -eq 1; then
patch_apply ntdll-Junction_Points/0023-wcmd-Add-junction-point-support-to-mklink.patch
patch_apply ntdll-Junction_Points/0024-ntdll-Add-support-for-creating-Unix-Linux-symlinks.patch
patch_apply ntdll-Junction_Points/0025-ntdll-Report-regular-Unix-symlinks-as-WSL-Linux-Unix.patch
patch_apply ntdll-Junction_Points/0026-include-Add-ntifs.h.patch
fi
# Patchset server-PeekMessage
@@ -2047,6 +2047,10 @@ 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/0004-include-Add-_XHR-enum-values.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

View File

@@ -1,4 +1,4 @@
From f678ed41b4306e31b6a95282710c2bf3a5abb1be Mon Sep 17 00:00:00 2001
From 2f009b87fbb30774851f31d537b921bf90d50e1f Mon Sep 17 00:00:00 2001
From: Dmitry Timoshkov <dmitry@baikal.ru>
Date: Wed, 10 Feb 2016 15:09:29 +0800
Subject: [PATCH] winex11.drv: Add support for _NET_ACTIVE_WINDOW. (v2)
@@ -8,13 +8,14 @@ And use it as a backend in user32.SetActiveWindow().
For bug #2155.
---
dlls/win32u/driver.c | 6 +++++
dlls/win32u/input.c | 2 ++
dlls/winex11.drv/event.c | 5 ++++
dlls/winex11.drv/init.c | 1 +
dlls/winex11.drv/window.c | 48 ++++++++++++++++++++++++++++++++++
dlls/winex11.drv/x11drv.h | 3 +++
dlls/winex11.drv/x11drv_main.c | 1 +
include/wine/gdi_driver.h | 1 +
7 files changed, 65 insertions(+)
8 files changed, 67 insertions(+)
diff --git a/dlls/win32u/driver.c b/dlls/win32u/driver.c
index 557d555d673..c8077a73e32 100644
@@ -47,6 +48,19 @@ index 557d555d673..c8077a73e32 100644
SET_USER_FUNC(SetCapture);
SET_USER_FUNC(SetFocus);
SET_USER_FUNC(SetLayeredWindowAttributes);
diff --git a/dlls/win32u/input.c b/dlls/win32u/input.c
index fd16d03f733..8fcf1a2fb7e 100644
--- a/dlls/win32u/input.c
+++ b/dlls/win32u/input.c
@@ -1635,6 +1635,8 @@ static BOOL set_active_window( HWND hwnd, HWND *prev, BOOL mouse, BOOL focus )
NtUserPostMessage( get_desktop_window(), WM_PARENTNOTIFY, WM_NCACTIVATE, (LPARAM)hwnd );
}
+ user_driver->pSetActiveWindow( hwnd );
+
/* now change focus if necessary */
if (focus)
{
diff --git a/dlls/winex11.drv/event.c b/dlls/winex11.drv/event.c
index 86edf66b820..f2b965706f4 100644
--- a/dlls/winex11.drv/event.c
@@ -71,10 +85,10 @@ index 86edf66b820..f2b965706f4 100644
Foreground window, because in most cases the messages sent
above must have already changed the foreground window, in which
diff --git a/dlls/winex11.drv/init.c b/dlls/winex11.drv/init.c
index ba9aff82a06..0b80a660e9a 100644
index 4ebe3a16367..1afadf626a9 100644
--- a/dlls/winex11.drv/init.c
+++ b/dlls/winex11.drv/init.c
@@ -418,6 +418,7 @@ static const struct user_driver_funcs x11drv_funcs =
@@ -415,6 +415,7 @@ static const struct user_driver_funcs x11drv_funcs =
.pMsgWaitForMultipleObjectsEx = X11DRV_MsgWaitForMultipleObjectsEx,
.pReleaseDC = X11DRV_ReleaseDC,
.pScrollDC = X11DRV_ScrollDC,
@@ -142,7 +156,7 @@ index 603314ff3bb..49ee4b75052 100644
* SetCapture (X11DRV.@)
*/
diff --git a/dlls/winex11.drv/x11drv.h b/dlls/winex11.drv/x11drv.h
index cd5f203c377..5e9ae21ab0d 100644
index b394795a326..8da45e70179 100644
--- a/dlls/winex11.drv/x11drv.h
+++ b/dlls/winex11.drv/x11drv.h
@@ -227,6 +227,7 @@ extern void X11DRV_GetDC( HDC hdc, HWND hwnd, HWND top, const RECT *win_rect,
@@ -153,7 +167,7 @@ index cd5f203c377..5e9ae21ab0d 100644
extern void X11DRV_SetCapture( HWND hwnd, UINT flags ) DECLSPEC_HIDDEN;
extern void X11DRV_SetLayeredWindowAttributes( HWND hwnd, COLORREF key, BYTE alpha,
DWORD flags ) DECLSPEC_HIDDEN;
@@ -377,6 +378,7 @@ struct x11drv_thread_data
@@ -376,6 +377,7 @@ struct x11drv_thread_data
Display *display;
XEvent *current_event; /* event currently being processed */
HWND grab_hwnd; /* window that currently grabs the mouse */
@@ -161,7 +175,7 @@ index cd5f203c377..5e9ae21ab0d 100644
HWND last_focus; /* last window that had focus */
XIM xim; /* input method */
HWND last_xic_hwnd; /* last xic window */
@@ -485,6 +487,7 @@ enum x11drv_atoms
@@ -484,6 +486,7 @@ enum x11drv_atoms
XATOM__ICC_PROFILE,
XATOM__KDE_NET_WM_STATE_SKIP_SWITCHER,
XATOM__MOTIF_WM_HINTS,
@@ -194,5 +208,5 @@ index d074c09cceb..d45a894adf2 100644
void (*pSetFocus)(HWND);
void (*pSetLayeredWindowAttributes)(HWND,COLORREF,BYTE,DWORD);
--
2.38.1
2.39.0

View File

@@ -1,4 +1,4 @@
From 49cc6f9c79195d243f0e8d035267d9734708e5a5 Mon Sep 17 00:00:00 2001
From 7f524fa9868f4707d6c30af6692283dfc18e647e Mon Sep 17 00:00:00 2001
From: Dmitry Timoshkov <dmitry@baikal.ru>
Date: Wed, 6 Apr 2016 15:14:25 +0800
Subject: [PATCH] user32: Before asking a WM to activate a window make sure
@@ -10,10 +10,10 @@ This patch fixes iconify action using WM's taskbar buttons for Winamp.
1 file changed, 4 insertions(+)
diff --git a/dlls/win32u/input.c b/dlls/win32u/input.c
index ade8c313423..dda2a750275 100644
index 8fcf1a2fb7e..ad7afdfcc68 100644
--- a/dlls/win32u/input.c
+++ b/dlls/win32u/input.c
@@ -1377,6 +1377,10 @@ static BOOL set_active_window( HWND hwnd, HWND *prev, BOOL mouse, BOOL focus )
@@ -1633,6 +1633,10 @@ static BOOL set_active_window( HWND hwnd, HWND *prev, BOOL mouse, BOOL focus )
(LPARAM)previous );
if (NtUserGetAncestor( hwnd, GA_PARENT ) == get_desktop_window())
NtUserPostMessage( get_desktop_window(), WM_PARENTNOTIFY, WM_NCACTIVATE, (LPARAM)hwnd );
@@ -23,7 +23,7 @@ index ade8c313423..dda2a750275 100644
+
}
/* now change focus if necessary */
user_driver->pSetActiveWindow( hwnd );
--
2.35.1
2.39.0

View File

@@ -1,2 +1,2 @@
Wine Staging 8.0-rc2
Wine Staging 8.0

View File

@@ -1 +1 @@
2b0cd25b5f5794463a59cac999583fb52fa021cc
6677c044abb711f423fadfb61f2c9a37da6ff686