winehq.org
Sign In
Sign Up
Sign In
Sign Up
Manage this list
×
Keyboard Shortcuts
Thread View
j
: Next unread message
k
: Previous unread message
j a
: Jump to all threads
j l
: Jump to MailingList overview
2025
February
January
2024
December
November
October
September
August
July
June
May
April
March
February
January
2023
December
November
October
September
August
July
June
May
April
March
February
January
2022
December
November
October
September
August
July
June
May
April
March
February
January
2021
December
November
October
September
August
July
June
May
April
March
February
January
2020
December
November
October
September
August
July
June
May
April
March
February
January
2019
December
November
October
September
August
July
June
May
April
March
February
January
2018
December
November
October
September
August
July
June
May
April
March
February
January
2017
December
November
October
September
August
July
June
May
April
March
February
January
2016
December
November
October
September
August
July
June
May
April
March
February
January
2015
December
November
October
September
August
July
June
May
April
March
February
January
2014
December
November
October
September
August
July
June
May
April
March
February
January
2013
December
November
October
September
August
July
June
May
April
March
February
January
2012
December
November
October
September
August
July
June
May
April
March
February
January
2011
December
November
October
September
August
July
June
May
April
March
February
January
2010
December
November
October
September
August
July
June
May
April
March
February
January
2009
December
November
October
September
August
July
June
May
April
March
February
January
2008
December
November
October
September
August
July
June
May
April
March
February
January
2007
December
November
October
September
August
July
June
May
April
March
February
January
2006
December
November
October
September
August
July
June
May
April
March
February
January
2005
December
November
October
September
August
July
June
May
April
March
February
January
2004
December
November
October
September
August
July
June
May
April
March
February
January
2003
December
November
October
September
August
July
June
May
April
March
February
January
2002
December
November
October
September
August
July
June
May
April
March
February
January
2001
December
November
October
September
August
July
June
May
April
March
February
List overview
wine-commits
March 2021
----- 2025 -----
February 2025
January 2025
----- 2024 -----
December 2024
November 2024
October 2024
September 2024
August 2024
July 2024
June 2024
May 2024
April 2024
March 2024
February 2024
January 2024
----- 2023 -----
December 2023
November 2023
October 2023
September 2023
August 2023
July 2023
June 2023
May 2023
April 2023
March 2023
February 2023
January 2023
----- 2022 -----
December 2022
November 2022
October 2022
September 2022
August 2022
July 2022
June 2022
May 2022
April 2022
March 2022
February 2022
January 2022
----- 2021 -----
December 2021
November 2021
October 2021
September 2021
August 2021
July 2021
June 2021
May 2021
April 2021
March 2021
February 2021
January 2021
----- 2020 -----
December 2020
November 2020
October 2020
September 2020
August 2020
July 2020
June 2020
May 2020
April 2020
March 2020
February 2020
January 2020
----- 2019 -----
December 2019
November 2019
October 2019
September 2019
August 2019
July 2019
June 2019
May 2019
April 2019
March 2019
February 2019
January 2019
----- 2018 -----
December 2018
November 2018
October 2018
September 2018
August 2018
July 2018
June 2018
May 2018
April 2018
March 2018
February 2018
January 2018
----- 2017 -----
December 2017
November 2017
October 2017
September 2017
August 2017
July 2017
June 2017
May 2017
April 2017
March 2017
February 2017
January 2017
----- 2016 -----
December 2016
November 2016
October 2016
September 2016
August 2016
July 2016
June 2016
May 2016
April 2016
March 2016
February 2016
January 2016
----- 2015 -----
December 2015
November 2015
October 2015
September 2015
August 2015
July 2015
June 2015
May 2015
April 2015
March 2015
February 2015
January 2015
----- 2014 -----
December 2014
November 2014
October 2014
September 2014
August 2014
July 2014
June 2014
May 2014
April 2014
March 2014
February 2014
January 2014
----- 2013 -----
December 2013
November 2013
October 2013
September 2013
August 2013
July 2013
June 2013
May 2013
April 2013
March 2013
February 2013
January 2013
----- 2012 -----
December 2012
November 2012
October 2012
September 2012
August 2012
July 2012
June 2012
May 2012
April 2012
March 2012
February 2012
January 2012
----- 2011 -----
December 2011
November 2011
October 2011
September 2011
August 2011
July 2011
June 2011
May 2011
April 2011
March 2011
February 2011
January 2011
----- 2010 -----
December 2010
November 2010
October 2010
September 2010
August 2010
July 2010
June 2010
May 2010
April 2010
March 2010
February 2010
January 2010
----- 2009 -----
December 2009
November 2009
October 2009
September 2009
August 2009
July 2009
June 2009
May 2009
April 2009
March 2009
February 2009
January 2009
----- 2008 -----
December 2008
November 2008
October 2008
September 2008
August 2008
July 2008
June 2008
May 2008
April 2008
March 2008
February 2008
January 2008
----- 2007 -----
December 2007
November 2007
October 2007
September 2007
August 2007
July 2007
June 2007
May 2007
April 2007
March 2007
February 2007
January 2007
----- 2006 -----
December 2006
November 2006
October 2006
September 2006
August 2006
July 2006
June 2006
May 2006
April 2006
March 2006
February 2006
January 2006
----- 2005 -----
December 2005
November 2005
October 2005
September 2005
August 2005
July 2005
June 2005
May 2005
April 2005
March 2005
February 2005
January 2005
----- 2004 -----
December 2004
November 2004
October 2004
September 2004
August 2004
July 2004
June 2004
May 2004
April 2004
March 2004
February 2004
January 2004
----- 2003 -----
December 2003
November 2003
October 2003
September 2003
August 2003
July 2003
June 2003
May 2003
April 2003
March 2003
February 2003
January 2003
----- 2002 -----
December 2002
November 2002
October 2002
September 2002
August 2002
July 2002
June 2002
May 2002
April 2002
March 2002
February 2002
January 2002
----- 2001 -----
December 2001
November 2001
October 2001
September 2001
August 2001
July 2001
June 2001
May 2001
April 2001
March 2001
February 2001
wine-commits@winehq.org
2 participants
1163 discussions
Start a n
N
ew thread
Jacek Caban : winmm: Use nameless unions.
by Alexandre Julliard
24 Mar '21
24 Mar '21
Module: wine Branch: master Commit: 19ca8c7f30c48f7eebea9267a763f24f48ec0c01 URL:
https://source.winehq.org/git/wine.git/?a=commit;h=19ca8c7f30c48f7eebea9267…
Author: Jacek Caban <jacek(a)codeweavers.com> Date: Wed Mar 24 18:37:02 2021 +0100 winmm: Use nameless unions. Signed-off-by: Jacek Caban <jacek(a)codeweavers.com> Signed-off-by: Andrew Eikum <aeikum(a)codeweavers.com> Signed-off-by: Alexandre Julliard <julliard(a)winehq.org> --- dlls/winmm/Makefile.in | 2 +- dlls/winmm/lolvldrv.c | 4 ++-- dlls/winmm/waveform.c | 6 +++--- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/dlls/winmm/Makefile.in b/dlls/winmm/Makefile.in index d003a53afe4..c05115d5c58 100644 --- a/dlls/winmm/Makefile.in +++ b/dlls/winmm/Makefile.in @@ -1,4 +1,4 @@ -EXTRADEFS = -D_WINMM_ -DWINE_NO_NAMELESS_EXTENSION +EXTRADEFS = -D_WINMM_ MODULE = winmm.dll IMPORTLIB = winmm IMPORTS = uuid user32 advapi32 ole32 msacm32 diff --git a/dlls/winmm/lolvldrv.c b/dlls/winmm/lolvldrv.c index d5efc7f6b9f..d3bd5536976 100644 --- a/dlls/winmm/lolvldrv.c +++ b/dlls/winmm/lolvldrv.c @@ -532,10 +532,10 @@ static void MMDRV_Init(void) goto exit; } - size = WideCharToMultiByte(CP_ACP, 0, pv.u.pwszVal, -1, + size = WideCharToMultiByte(CP_ACP, 0, pv.pwszVal, -1, NULL, 0, NULL, NULL); drvA = HeapAlloc(GetProcessHeap(), 0, size); - WideCharToMultiByte(CP_ACP, 0, pv.u.pwszVal, -1, drvA, size, NULL, NULL); + WideCharToMultiByte(CP_ACP, 0, pv.pwszVal, -1, drvA, size, NULL, NULL); MMDRV_Install(drvA, drvA, FALSE); diff --git a/dlls/winmm/waveform.c b/dlls/winmm/waveform.c index 37dfc919174..1159b48b483 100644 --- a/dlls/winmm/waveform.c +++ b/dlls/winmm/waveform.c @@ -422,7 +422,7 @@ static HRESULT WINMM_GetFriendlyName(IMMDevice *device, WCHAR *out, return hr; } - lstrcpynW(out, var.u.pwszVal, outlen); + lstrcpynW(out, var.pwszVal, outlen); PropVariantClear(&var); @@ -2368,7 +2368,7 @@ static LRESULT DRV_QueryDeviceInterface(WINMM_QueryInterfaceInfo *info) return MMSYSERR_ERROR; } - len_bytes = (lstrlenW(pv.u.pwszVal) + 1) * sizeof(WCHAR); + len_bytes = (lstrlenW(pv.pwszVal) + 1) * sizeof(WCHAR); if(info->str){ if(len_bytes > *info->len_bytes){ @@ -2378,7 +2378,7 @@ static LRESULT DRV_QueryDeviceInterface(WINMM_QueryInterfaceInfo *info) return MMSYSERR_INVALPARAM; } - memcpy(info->str, pv.u.pwszVal, len_bytes); + memcpy(info->str, pv.pwszVal, len_bytes); }else *info->len_bytes = len_bytes;
1
0
0
0
Gijs Vermeulen : sapi/tests: Remove SpResourceManager refcount tests.
by Alexandre Julliard
24 Mar '21
24 Mar '21
Module: wine Branch: master Commit: 55e834948cb21dc400411448abc44c37fc5dc509 URL:
https://source.winehq.org/git/wine.git/?a=commit;h=55e834948cb21dc400411448…
Author: Gijs Vermeulen <gijsvrm(a)gmail.com> Date: Wed Mar 24 18:16:26 2021 +0100 sapi/tests: Remove SpResourceManager refcount tests. Wine-Bug:
https://bugs.winehq.org/show_bug.cgi?id=50841
Signed-off-by: Gijs Vermeulen <gijsvrm(a)gmail.com> Signed-off-by: Alexandre Julliard <julliard(a)winehq.org> --- dlls/sapi/tests/resource.c | 23 +++++------------------ 1 file changed, 5 insertions(+), 18 deletions(-) diff --git a/dlls/sapi/tests/resource.c b/dlls/sapi/tests/resource.c index cbddaf6323a..0c4bd5bc783 100644 --- a/dlls/sapi/tests/resource.c +++ b/dlls/sapi/tests/resource.c @@ -25,15 +25,6 @@ #include "wine/test.h" -#define EXPECT_REF(obj,ref) _expect_ref((IUnknown*)obj, ref, __LINE__) -static void _expect_ref(IUnknown *obj, ULONG ref, int line) -{ - ULONG rc; - IUnknown_AddRef(obj); - rc = IUnknown_Release(obj); - ok_(__FILE__,line)(rc == ref, "Unexpected refcount %d, expected %d.\n", rc, ref); -} - static void test_interfaces(void) { ISpResourceManager *resource_manager, *resource_manager2; @@ -44,25 +35,21 @@ static void test_interfaces(void) hr = CoCreateInstance(&CLSID_SpResourceManager, NULL, CLSCTX_INPROC_SERVER, &IID_ISpResourceManager, (void **)&resource_manager); ok(hr == S_OK, "Failed to create ISpeechVoice interface: %#x.\n", hr); - EXPECT_REF(resource_manager, 1); + ok(!!resource_manager, "Expected non-NULL resource manager.\n"); hr = CoCreateInstance(&CLSID_SpResourceManager, NULL, CLSCTX_INPROC_SERVER, &IID_ISpResourceManager, (void **)&resource_manager2); ok(hr == S_OK, "Failed to create ISpeechVoice interface: %#x.\n", hr); + ok(!!resource_manager2, "Expected non-NULL resource manager.\n"); todo_wine ok(resource_manager2 == resource_manager, "Expected managers to match.\n"); - todo_wine EXPECT_REF(resource_manager2, 2); - todo_wine EXPECT_REF(resource_manager, 2); - if (resource_manager2 == resource_manager) ISpResourceManager_Release(resource_manager2); - EXPECT_REF(resource_manager, 1); + ISpResourceManager_Release(resource_manager2); hr = CoCreateInstance(&CLSID_SpResourceManager, NULL, CLSCTX_INPROC_SERVER, &IID_IUnknown, (void **)&unk); ok(hr == S_OK, "Failed to create IUnknown interface: %#x.\n", hr); + ok(!!unk, "Expected non-NULL unk.\n"); todo_wine ok(unk == (IUnknown *)resource_manager, "Expected unk to match existing manager.\n"); - todo_wine EXPECT_REF(unk, 2); - todo_wine EXPECT_REF(resource_manager, 2); - if (unk == (IUnknown *)resource_manager) IUnknown_Release(unk); - EXPECT_REF(resource_manager, 1); + IUnknown_Release(unk); hr = CoCreateInstance(&CLSID_SpResourceManager, NULL, CLSCTX_INPROC_SERVER, &IID_IDispatch, (void **)&dispatch);
1
0
0
0
Jacek Caban : jscript: Fallback to begin of input in script_parse if error location was not recorded.
by Alexandre Julliard
24 Mar '21
24 Mar '21
Module: wine Branch: master Commit: bb61c8d338c825c31057014b3c46d322f402ec27 URL:
https://source.winehq.org/git/wine.git/?a=commit;h=bb61c8d338c825c31057014b…
Author: Jacek Caban <jacek(a)codeweavers.com> Date: Wed Mar 24 16:41:45 2021 +0100 jscript: Fallback to begin of input in script_parse if error location was not recorded. Signed-off-by: Jacek Caban <jacek(a)codeweavers.com> Signed-off-by: Alexandre Julliard <julliard(a)winehq.org> --- dlls/jscript/parser.y | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/dlls/jscript/parser.y b/dlls/jscript/parser.y index 716c9688201..bfc83912ba1 100644 --- a/dlls/jscript/parser.y +++ b/dlls/jscript/parser.y @@ -1595,7 +1595,8 @@ HRESULT script_parse(script_ctx_t *ctx, struct _compiler_ctx_t *compiler, byteco heap_pool_clear(mark); hres = parser_ctx->hres; if(FAILED(hres)) { - const WCHAR *line_start = code->source + parser_ctx->error_loc, *line_end = line_start; + unsigned int error_loc = parser_ctx->error_loc == -1 ? 0 : parser_ctx->error_loc; + const WCHAR *line_start = code->source + error_loc, *line_end = line_start; jsstr_t *line_str; while(line_start > code->source && line_start[-1] != '\n') @@ -1609,7 +1610,7 @@ HRESULT script_parse(script_ctx_t *ctx, struct _compiler_ctx_t *compiler, byteco debugstr_jsstr(line_str)); throw_error(ctx, hres, NULL); - set_error_location(ctx->ei, code, parser_ctx->error_loc, IDS_COMPILATION_ERROR, line_str); + set_error_location(ctx->ei, code, error_loc, IDS_COMPILATION_ERROR, line_str); parser_release(parser_ctx); if(line_str) jsstr_release(line_str);
1
0
0
0
Zebediah Figura : ntoskrnl/tests: Test-sign driver files.
by Alexandre Julliard
24 Mar '21
24 Mar '21
Module: wine Branch: master Commit: 1f9a4e1389ed33394ef1fb5a38a24f50e589501a URL:
https://source.winehq.org/git/wine.git/?a=commit;h=1f9a4e1389ed33394ef1fb5a…
Author: Zebediah Figura <z.figura12(a)gmail.com> Date: Wed Mar 24 09:56:43 2021 -0500 ntoskrnl/tests: Test-sign driver files. Signed-off-by: Zebediah Figura <z.figura12(a)gmail.com> Signed-off-by: Alexandre Julliard <julliard(a)winehq.org> --- dlls/ntoskrnl.exe/tests/Makefile.in | 2 +- dlls/ntoskrnl.exe/tests/ntoskrnl.c | 228 ++++++++++++++++++++++++++++++++++-- 2 files changed, 217 insertions(+), 13 deletions(-) Diff:
https://source.winehq.org/git/wine.git/?a=commitdiff;h=1f9a4e1389ed33394ef1…
1
0
0
0
Zebediah Figura : ntoskrnl/tests: Use WCHAR file paths.
by Alexandre Julliard
24 Mar '21
24 Mar '21
Module: wine Branch: master Commit: c6aa40a761a02fef69519be5e1c2249742afcc34 URL:
https://source.winehq.org/git/wine.git/?a=commit;h=c6aa40a761a02fef69519be5…
Author: Zebediah Figura <z.figura12(a)gmail.com> Date: Wed Mar 24 09:56:42 2021 -0500 ntoskrnl/tests: Use WCHAR file paths. Signed-off-by: Zebediah Figura <z.figura12(a)gmail.com> Signed-off-by: Alexandre Julliard <julliard(a)winehq.org> --- dlls/ntoskrnl.exe/tests/ntoskrnl.c | 48 +++++++++++++++++++------------------- 1 file changed, 24 insertions(+), 24 deletions(-) diff --git a/dlls/ntoskrnl.exe/tests/ntoskrnl.c b/dlls/ntoskrnl.exe/tests/ntoskrnl.c index 1cfdeff0911..6abfc448d50 100644 --- a/dlls/ntoskrnl.exe/tests/ntoskrnl.c +++ b/dlls/ntoskrnl.exe/tests/ntoskrnl.c @@ -40,21 +40,21 @@ static BOOL (WINAPI *pRtlFreeUnicodeString)(UNICODE_STRING *); static BOOL (WINAPI *pCancelIoEx)(HANDLE, OVERLAPPED *); static BOOL (WINAPI *pSetFileCompletionNotificationModes)(HANDLE, UCHAR); -static void load_resource(const char *name, char *filename) +static void load_resource(const WCHAR *name, WCHAR *filename) { - static char path[MAX_PATH]; + static WCHAR path[MAX_PATH]; DWORD written; HANDLE file; HRSRC res; void *ptr; - GetTempPathA(sizeof(path), path); - GetTempFileNameA(path, name, 0, filename); + GetTempPathW(ARRAY_SIZE(path), path); + GetTempFileNameW(path, name, 0, filename); - file = CreateFileA(filename, GENERIC_READ|GENERIC_WRITE, 0, NULL, CREATE_ALWAYS, 0, 0); - ok(file != INVALID_HANDLE_VALUE, "file creation failed, at %s, error %d\n", filename, GetLastError()); + file = CreateFileW(filename, GENERIC_READ|GENERIC_WRITE, 0, NULL, CREATE_ALWAYS, 0, 0); + ok(file != INVALID_HANDLE_VALUE, "failed to create %s, error %u\n", debugstr_w(filename), GetLastError()); - res = FindResourceA(NULL, name, "TESTDLL"); + res = FindResourceW(NULL, name, L"TESTDLL"); ok( res != 0, "couldn't find resource\n" ); ptr = LockResource( LoadResource( GetModuleHandleA(NULL), res )); WriteFile( file, ptr, SizeofResource( GetModuleHandleA(NULL), res ), &written, NULL ); @@ -81,7 +81,7 @@ static void unload_driver(SC_HANDLE service) CloseServiceHandle(service); } -static SC_HANDLE load_driver(char *filename, const char *resname, const char *driver_name) +static SC_HANDLE load_driver(WCHAR *filename, const WCHAR *resname, const WCHAR *driver_name) { SC_HANDLE manager, service; @@ -94,13 +94,13 @@ static SC_HANDLE load_driver(char *filename, const char *resname, const char *dr ok(!!manager, "OpenSCManager failed\n"); /* stop any old drivers running under this name */ - service = OpenServiceA(manager, driver_name, SERVICE_ALL_ACCESS); + service = OpenServiceW(manager, driver_name, SERVICE_ALL_ACCESS); if (service) unload_driver(service); load_resource(resname, filename); - trace("Trying to load driver %s\n", filename); + trace("Trying to load driver %s\n", debugstr_w(filename)); - service = CreateServiceA(manager, driver_name, driver_name, + service = CreateServiceW(manager, driver_name, driver_name, SERVICE_ALL_ACCESS, SERVICE_KERNEL_DRIVER, SERVICE_DEMAND_START, SERVICE_ERROR_NORMAL, filename, NULL, NULL, NULL, NULL, NULL); @@ -618,11 +618,11 @@ static void test_object_info(void) static void test_driver3(void) { - char filename[MAX_PATH]; + WCHAR filename[MAX_PATH]; SC_HANDLE service; BOOL ret; - service = load_driver(filename, "driver3.dll", "WineTestDriver3"); + service = load_driver(filename, L"driver3.dll", L"WineTestDriver3"); ok(service != NULL, "driver3 failed to load\n"); ret = StartServiceA(service, 0, NULL); @@ -634,7 +634,7 @@ static void test_driver3(void) DeleteService(service); CloseServiceHandle(service); - DeleteFileA(filename); + DeleteFileW(filename); } static DWORD WINAPI wsk_test_thread(void *parameter) @@ -698,18 +698,18 @@ static DWORD WINAPI wsk_test_thread(void *parameter) static void test_driver4(void) { - char filename[MAX_PATH]; + WCHAR filename[MAX_PATH]; SC_HANDLE service; HANDLE hthread; DWORD written; BOOL ret; - if (!(service = load_driver(filename, "driver4.dll", "WineTestDriver4"))) + if (!(service = load_driver(filename, L"driver4.dll", L"WineTestDriver4"))) return; if (!start_driver(service, TRUE)) { - DeleteFileA(filename); + DeleteFileW(filename); return; } @@ -726,13 +726,13 @@ static void test_driver4(void) CloseHandle(device); unload_driver(service); - ret = DeleteFileA(filename); + ret = DeleteFileW(filename); ok(ret, "DeleteFile failed: %u\n", GetLastError()); } START_TEST(ntoskrnl) { - char filename[MAX_PATH], filename2[MAX_PATH]; + WCHAR filename[MAX_PATH], filename2[MAX_PATH]; SC_HANDLE service, service2; DWORD written; BOOL ret; @@ -745,14 +745,14 @@ START_TEST(ntoskrnl) "SetFileCompletionNotificationModes"); subtest("driver"); - if (!(service = load_driver(filename, "driver.dll", "WineTestDriver"))) + if (!(service = load_driver(filename, L"driver.dll", L"WineTestDriver"))) return; if (!start_driver(service, FALSE)) { - DeleteFileA(filename); + DeleteFileW(filename); return; } - service2 = load_driver(filename2, "driver2.dll", "WineTestDriver2"); + service2 = load_driver(filename2, L"driver2.dll", L"WineTestDriver2"); device = CreateFileA("\\\\.\\WineTestDriver", 0, 0, NULL, OPEN_EXISTING, 0, NULL); ok(device != INVALID_HANDLE_VALUE, "failed to open device: %u\n", GetLastError()); @@ -778,9 +778,9 @@ START_TEST(ntoskrnl) unload_driver(service2); unload_driver(service); - ret = DeleteFileA(filename); + ret = DeleteFileW(filename); ok(ret, "DeleteFile failed: %u\n", GetLastError()); - ret = DeleteFileA(filename2); + ret = DeleteFileW(filename2); ok(ret, "DeleteFile failed: %u\n", GetLastError()); test_driver3();
1
0
0
0
Zebediah Figura : ntoskrnl/tests: Fix a test failure on Windows 10.
by Alexandre Julliard
24 Mar '21
24 Mar '21
Module: wine Branch: master Commit: 5e6b46f3eae584e5b0f9542f12e36e1846959b42 URL:
https://source.winehq.org/git/wine.git/?a=commit;h=5e6b46f3eae584e5b0f9542f…
Author: Zebediah Figura <z.figura12(a)gmail.com> Date: Wed Mar 24 09:56:41 2021 -0500 ntoskrnl/tests: Fix a test failure on Windows 10. Signed-off-by: Zebediah Figura <z.figura12(a)gmail.com> Signed-off-by: Alexandre Julliard <julliard(a)winehq.org> --- dlls/ntoskrnl.exe/ntoskrnl.exe.spec | 2 +- dlls/ntoskrnl.exe/tests/driver.c | 21 ++++++++++++++++++++- 2 files changed, 21 insertions(+), 2 deletions(-) diff --git a/dlls/ntoskrnl.exe/ntoskrnl.exe.spec b/dlls/ntoskrnl.exe/ntoskrnl.exe.spec index 9da62c44dd5..0f5ab76a195 100644 --- a/dlls/ntoskrnl.exe/ntoskrnl.exe.spec +++ b/dlls/ntoskrnl.exe/ntoskrnl.exe.spec @@ -1466,7 +1466,7 @@ @ stdcall -private ZwQueryInstallUILanguage(ptr) NtQueryInstallUILanguage @ stdcall -private ZwQueryKey(long long ptr long ptr) NtQueryKey @ stdcall -private ZwQueryLicenseValue(ptr ptr ptr long ptr) NtQueryLicenseValue -@ stdcall -private ZwQueryObject(long long ptr long ptr) NtQueryObject +@ stdcall ZwQueryObject(long long ptr long ptr) NtQueryObject @ stdcall -private ZwQuerySection(long long ptr long ptr) NtQuerySection @ stdcall -private ZwQuerySecurityObject(long long ptr long ptr) NtQuerySecurityObject @ stdcall -private ZwQuerySymbolicLinkObject(long ptr ptr) NtQuerySymbolicLinkObject diff --git a/dlls/ntoskrnl.exe/tests/driver.c b/dlls/ntoskrnl.exe/tests/driver.c index d1ec8a7e5b9..d9d712418ee 100644 --- a/dlls/ntoskrnl.exe/tests/driver.c +++ b/dlls/ntoskrnl.exe/tests/driver.c @@ -197,10 +197,15 @@ static void WINAPI test_load_image_notify_routine(UNICODE_STRING *image_name, HA static void test_load_driver(void) { + char full_name_buffer[300]; + OBJECT_NAME_INFORMATION *full_name = (OBJECT_NAME_INFORMATION *)full_name_buffer; static WCHAR image_path_key_name[] = L"ImagePath"; RTL_QUERY_REGISTRY_TABLE query_table[2]; UNICODE_STRING name, image_path; + OBJECT_ATTRIBUTES attr; + IO_STATUS_BLOCK io; NTSTATUS ret; + HANDLE file; ret = PsSetLoadImageNotifyRoutine(test_load_image_notify_routine); ok(ret == STATUS_SUCCESS, "Got unexpected status %#x.\n", ret); @@ -221,6 +226,18 @@ static void test_load_driver(void) ok(ret == STATUS_SUCCESS, "Got unexpected status %#x.\n", ret); ok(!!image_path.Buffer, "image_path.Buffer is NULL.\n"); + /* The image path name in the registry may contain NT symlinks (e.g. DOS + * drives), which are resolved before the callback is called on Windows 10. */ + InitializeObjectAttributes(&attr, &image_path, OBJ_KERNEL_HANDLE, NULL, NULL); + ret = ZwOpenFile(&file, SYNCHRONIZE, &attr, &io, 0, FILE_SYNCHRONOUS_IO_NONALERT); + todo_wine ok(!ret, "Got unexpected status %#x.\n", ret); + if (!ret) + { + ret = ZwQueryObject(file, ObjectNameInformation, full_name_buffer, sizeof(full_name_buffer), NULL); + ok(!ret, "Got unexpected status %#x.\n", ret); + ZwClose(file); + } + RtlInitUnicodeString(&name, driver2_path); ret = ZwLoadDriver(&name); @@ -232,7 +249,9 @@ static void test_load_driver(void) "Got unexpected ImageAddressingMode %#x.\n", test_image_info.ImageAddressingMode); ok(test_image_info.SystemModeImage, "Got unexpected SystemModeImage %#x.\n", test_image_info.SystemModeImage); - ok(!wcscmp(test_load_image_name, image_path.Buffer), "Image path names do not match.\n"); + ok(!wcscmp(test_load_image_name, image_path.Buffer) /* Win < 10 */ + || !wcscmp(test_load_image_name, full_name->Name.Buffer), + "Expected image path name %ls, got %ls.\n", full_name->Name.Buffer, test_load_image_name); test_load_image_notify_count = -1;
1
0
0
0
Zebediah Figura : include: Move SIGNER_* definitions to a new public header.
by Alexandre Julliard
24 Mar '21
24 Mar '21
Module: wine Branch: master Commit: 7543a17369f2ed513ef33f354e8fd4543ad7ea6a URL:
https://source.winehq.org/git/wine.git/?a=commit;h=7543a17369f2ed513ef33f35…
Author: Zebediah Figura <z.figura12(a)gmail.com> Date: Wed Mar 24 09:56:40 2021 -0500 include: Move SIGNER_* definitions to a new public header. Thereby making it easier to use them from ntoskrnl, setupapi, and other modules. Signed-off-by: Zebediah Figura <z.figura12(a)gmail.com> Signed-off-by: Alexandre Julliard <julliard(a)winehq.org> --- dlls/mssign32/mssign32_main.c | 3 +-- dlls/mssign32/mssign32_private.h => include/wine/mssign.h | 0 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/dlls/mssign32/mssign32_main.c b/dlls/mssign32/mssign32_main.c index 86825bf0ec1..c76d467f3f4 100644 --- a/dlls/mssign32/mssign32_main.c +++ b/dlls/mssign32/mssign32_main.c @@ -26,8 +26,7 @@ #include "wine/debug.h" #include "wine/heap.h" - -#include "mssign32_private.h" +#include "wine/mssign.h" WINE_DEFAULT_DEBUG_CHANNEL(mssign); diff --git a/dlls/mssign32/mssign32_private.h b/include/wine/mssign.h similarity index 100% rename from dlls/mssign32/mssign32_private.h rename to include/wine/mssign.h
1
0
0
0
Rémi Bernon : windows.globalization: Implement IGlobalizationPreferencesStatics stubs.
by Alexandre Julliard
24 Mar '21
24 Mar '21
Module: wine Branch: master Commit: 170417f5c7e1b5f180d0eaa5a8bfe38fd1c47732 URL:
https://source.winehq.org/git/wine.git/?a=commit;h=170417f5c7e1b5f180d0eaa5…
Author: Rémi Bernon <rbernon(a)codeweavers.com> Date: Wed Mar 24 11:32:24 2021 +0100 windows.globalization: Implement IGlobalizationPreferencesStatics stubs. Signed-off-by: Rémi Bernon <rbernon(a)codeweavers.com> Signed-off-by: Jacek Caban <jacek(a)codeweavers.com> Signed-off-by: Alexandre Julliard <julliard(a)winehq.org> --- dlls/windows.globalization/main.c | 122 +++++++++++++++++++++++ dlls/windows.globalization/tests/globalization.c | 8 +- 2 files changed, 126 insertions(+), 4 deletions(-) diff --git a/dlls/windows.globalization/main.c b/dlls/windows.globalization/main.c index 5e46cc0811b..17bb49a1c4e 100644 --- a/dlls/windows.globalization/main.c +++ b/dlls/windows.globalization/main.c @@ -29,7 +29,13 @@ #include "initguid.h" #include "activation.h" +#define WIDL_using_Windows_Foundation +#define WIDL_using_Windows_Foundation_Collections #include "windows.foundation.h" +#define WIDL_using_Windows_Globalization +#include "windows.globalization.h" +#define WIDL_using_Windows_System_UserProfile +#include "windows.system.userprofile.h" WINE_DEFAULT_DEBUG_CHANNEL(locale); @@ -45,6 +51,7 @@ static const char *debugstr_hstring(HSTRING hstr) struct windows_globalization { IActivationFactory IActivationFactory_iface; + IGlobalizationPreferencesStatics IGlobalizationPreferencesStatics_iface; LONG ref; }; @@ -53,6 +60,11 @@ static inline struct windows_globalization *impl_from_IActivationFactory(IActiva return CONTAINING_RECORD(iface, struct windows_globalization, IActivationFactory_iface); } +static inline struct windows_globalization *impl_from_IGlobalizationPreferencesStatics(IGlobalizationPreferencesStatics *iface) +{ + return CONTAINING_RECORD(iface, struct windows_globalization, IGlobalizationPreferencesStatics_iface); +} + static HRESULT STDMETHODCALLTYPE windows_globalization_QueryInterface( IActivationFactory *iface, REFIID iid, void **out) { @@ -69,6 +81,13 @@ static HRESULT STDMETHODCALLTYPE windows_globalization_QueryInterface( return S_OK; } + if (IsEqualGUID(iid, &IID_IGlobalizationPreferencesStatics)) + { + IUnknown_AddRef(iface); + *out = &impl->IGlobalizationPreferencesStatics_iface; + return S_OK; + } + FIXME("%s not implemented, returning E_NOINTERFACE.\n", debugstr_guid(iid)); *out = NULL; return E_NOINTERFACE; @@ -133,9 +152,112 @@ static const struct IActivationFactoryVtbl activation_factory_vtbl = windows_globalization_ActivateInstance, }; +static HRESULT STDMETHODCALLTYPE globalization_preferences_QueryInterface( + IGlobalizationPreferencesStatics *iface, REFIID iid, void **object) +{ + struct windows_globalization *impl = impl_from_IGlobalizationPreferencesStatics(iface); + return windows_globalization_QueryInterface(&impl->IActivationFactory_iface, iid, object); +} + +static ULONG STDMETHODCALLTYPE globalization_preferences_AddRef( + IGlobalizationPreferencesStatics *iface) +{ + struct windows_globalization *impl = impl_from_IGlobalizationPreferencesStatics(iface); + return windows_globalization_AddRef(&impl->IActivationFactory_iface); +} + +static ULONG STDMETHODCALLTYPE globalization_preferences_Release( + IGlobalizationPreferencesStatics *iface) +{ + struct windows_globalization *impl = impl_from_IGlobalizationPreferencesStatics(iface); + return windows_globalization_Release(&impl->IActivationFactory_iface); +} + +static HRESULT STDMETHODCALLTYPE globalization_preferences_GetIids( + IGlobalizationPreferencesStatics *iface, ULONG *iid_count, IID **iids) +{ + FIXME("iface %p, iid_count %p, iids %p stub!\n", iface, iid_count, iids); + return E_NOTIMPL; +} + +static HRESULT STDMETHODCALLTYPE globalization_preferences_GetRuntimeClassName( + IGlobalizationPreferencesStatics *iface, HSTRING *class_name) +{ + FIXME("iface %p, class_name %p stub!\n", iface, class_name); + return E_NOTIMPL; +} + +static HRESULT STDMETHODCALLTYPE globalization_preferences_GetTrustLevel( + IGlobalizationPreferencesStatics *iface, TrustLevel *trust_level) +{ + FIXME("iface %p, trust_level %p stub!\n", iface, trust_level); + return E_NOTIMPL; +} + +static HRESULT STDMETHODCALLTYPE globalization_preferences_get_Calendars( + IGlobalizationPreferencesStatics *iface, IVectorView_HSTRING **out) +{ + FIXME("iface %p, out %p stub!\n", iface, out); + return E_NOTIMPL; +} + +static HRESULT STDMETHODCALLTYPE globalization_preferences_get_Clocks( + IGlobalizationPreferencesStatics *iface, IVectorView_HSTRING **out) +{ + FIXME("iface %p, out %p stub!\n", iface, out); + return E_NOTIMPL; +} + +static HRESULT STDMETHODCALLTYPE globalization_preferences_get_Currencies( + IGlobalizationPreferencesStatics *iface, IVectorView_HSTRING **out) +{ + FIXME("iface %p, out %p stub!\n", iface, out); + return E_NOTIMPL; +} + +static HRESULT STDMETHODCALLTYPE globalization_preferences_get_Languages( + IGlobalizationPreferencesStatics *iface, IVectorView_HSTRING **out) +{ + FIXME("iface %p, out %p stub!\n", iface, out); + return E_NOTIMPL; +} + +static HRESULT STDMETHODCALLTYPE globalization_preferences_get_HomeGeographicRegion( + IGlobalizationPreferencesStatics *iface, HSTRING* out) +{ + FIXME("iface %p, out %p stub!\n", iface, out); + return E_NOTIMPL; +} + +static HRESULT STDMETHODCALLTYPE globalization_preferences_get_WeekStartsOn( + IGlobalizationPreferencesStatics *iface, enum DayOfWeek* out) +{ + FIXME("iface %p, out %p stub!\n", iface, out); + return E_NOTIMPL; +} + +static const struct IGlobalizationPreferencesStaticsVtbl globalization_preferences_vtbl = +{ + globalization_preferences_QueryInterface, + globalization_preferences_AddRef, + globalization_preferences_Release, + /* IInspectable methods */ + globalization_preferences_GetIids, + globalization_preferences_GetRuntimeClassName, + globalization_preferences_GetTrustLevel, + /* IGlobalizationPreferencesStatics methods */ + globalization_preferences_get_Calendars, + globalization_preferences_get_Clocks, + globalization_preferences_get_Currencies, + globalization_preferences_get_Languages, + globalization_preferences_get_HomeGeographicRegion, + globalization_preferences_get_WeekStartsOn, +}; + static struct windows_globalization windows_globalization = { {&activation_factory_vtbl}, + {&globalization_preferences_vtbl}, 0 }; diff --git a/dlls/windows.globalization/tests/globalization.c b/dlls/windows.globalization/tests/globalization.c index 7dad2e612bd..1918322b7a2 100644 --- a/dlls/windows.globalization/tests/globalization.c +++ b/dlls/windows.globalization/tests/globalization.c @@ -88,8 +88,7 @@ static void test_GlobalizationPreferences(void) ok(hr == S_OK, "IActivationFactory_QueryInterface IID_IAgileObject failed, hr %#x\n", hr); hr = IActivationFactory_QueryInterface(factory, &IID_IGlobalizationPreferencesStatics, (void **)&preferences_statics); - todo_wine ok(hr == S_OK, "IActivationFactory_QueryInterface IID_IGlobalizationPreferencesStatics failed, hr %#x\n", hr); - if (FAILED(hr)) goto done; + ok(hr == S_OK, "IActivationFactory_QueryInterface IID_IGlobalizationPreferencesStatics failed, hr %#x\n", hr); hr = IGlobalizationPreferencesStatics_QueryInterface(preferences_statics, &IID_IInspectable, (void **)&tmp_inspectable); ok(hr == S_OK, "IGlobalizationPreferencesStatics_QueryInterface IID_IInspectable failed, hr %#x\n", hr); @@ -102,7 +101,8 @@ static void test_GlobalizationPreferences(void) IAgileObject_Release(tmp_agile_object); hr = IGlobalizationPreferencesStatics_get_HomeGeographicRegion(preferences_statics, &tmp_str); - ok(hr == S_OK, "IGlobalizationPreferencesStatics_get_HomeGeographicRegion failed, hr %#x\n", hr); + todo_wine ok(hr == S_OK, "IGlobalizationPreferencesStatics_get_HomeGeographicRegion failed, hr %#x\n", hr); + if (FAILED(hr)) goto done; buf = pWindowsGetStringRawBuffer(tmp_str, &len); ok(buf != NULL && len > 0, "WindowsGetStringRawBuffer returned buf %p, len %u\n", buf, len); @@ -154,9 +154,9 @@ static void test_GlobalizationPreferences(void) IVectorView_HSTRING_Release(languages); +done: IGlobalizationPreferencesStatics_Release(preferences_statics); -done: IAgileObject_Release(agile_object); IInspectable_Release(inspectable); IActivationFactory_Release(factory);
1
0
0
0
Rémi Bernon : windows.globalization: Add stub dll.
by Alexandre Julliard
24 Mar '21
24 Mar '21
Module: wine Branch: master Commit: 2942261c6bab339620bc4cde975acb5910f71333 URL:
https://source.winehq.org/git/wine.git/?a=commit;h=2942261c6bab339620bc4cde…
Author: Rémi Bernon <rbernon(a)codeweavers.com> Date: Wed Mar 24 11:32:23 2021 +0100 windows.globalization: Add stub dll. Signed-off-by: Rémi Bernon <rbernon(a)codeweavers.com> Signed-off-by: Jacek Caban <jacek(a)codeweavers.com> Signed-off-by: Alexandre Julliard <julliard(a)winehq.org> --- configure | 3 + configure.ac | 2 + dlls/windows.globalization/Makefile.in | 9 + dlls/windows.globalization/classes.idl | 23 +++ dlls/windows.globalization/main.c | 159 +++++++++++++++++ dlls/windows.globalization/tests/Makefile.in | 5 + dlls/windows.globalization/tests/globalization.c | 197 +++++++++++++++++++++ .../windows.globalization.spec | 3 + 8 files changed, 401 insertions(+) Diff:
https://source.winehq.org/git/wine.git/?a=commitdiff;h=2942261c6bab339620bc…
1
0
0
0
Hugh McMaster : reg: Add extended help for supported operations.
by Alexandre Julliard
24 Mar '21
24 Mar '21
Module: wine Branch: master Commit: e319a463a20b060c059de36058624639e04c12a0 URL:
https://source.winehq.org/git/wine.git/?a=commit;h=e319a463a20b060c059de360…
Author: Hugh McMaster <hugh.mcmaster(a)outlook.com> Date: Wed Mar 24 19:09:02 2021 +1100 reg: Add extended help for supported operations. Signed-off-by: Hugh McMaster <hugh.mcmaster(a)outlook.com> Signed-off-by: Alexandre Julliard <julliard(a)winehq.org> --- po/ar.po | 244 ++++++++++++++++++++++++------- po/ast.po | 251 ++++++++++++++++++++++++++------ po/bg.po | 234 ++++++++++++++++++++++++------ po/ca.po | 257 ++++++++++++++++++++++++++------- po/cs.po | 242 ++++++++++++++++++++++++------- po/da.po | 243 ++++++++++++++++++++++++------- po/de.po | 256 ++++++++++++++++++++++++++------- po/el.po | 234 ++++++++++++++++++++++++------ po/en.po | 394 ++++++++++++++++++++++++++++++++++++++++++++------- po/en_US.po | 394 ++++++++++++++++++++++++++++++++++++++++++++------- po/eo.po | 234 ++++++++++++++++++++++++------ po/es.po | 246 +++++++++++++++++++++++++------- po/fa.po | 237 +++++++++++++++++++++++++------ po/fi.po | 257 ++++++++++++++++++++++++++------- po/fr.po | 246 +++++++++++++++++++++++++------- po/he.po | 244 ++++++++++++++++++++++++------- po/hi.po | 234 ++++++++++++++++++++++++------ po/hr.po | 244 ++++++++++++++++++++++++------- po/hu.po | 244 ++++++++++++++++++++++++------- po/it.po | 244 ++++++++++++++++++++++++------- po/ja.po | 256 ++++++++++++++++++++++++++------- po/ko.po | 257 ++++++++++++++++++++++++++------- po/lt.po | 257 ++++++++++++++++++++++++++------- po/ml.po | 234 ++++++++++++++++++++++++------ po/nb_NO.po | 256 ++++++++++++++++++++++++++------- po/nl.po | 257 ++++++++++++++++++++++++++------- po/or.po | 234 ++++++++++++++++++++++++------ po/pa.po | 234 ++++++++++++++++++++++++------ po/pl.po | 257 ++++++++++++++++++++++++++------- po/pt_BR.po | 257 ++++++++++++++++++++++++++------- po/pt_PT.po | 257 ++++++++++++++++++++++++++------- po/rm.po | 237 +++++++++++++++++++++++++------ po/ro.po | 246 +++++++++++++++++++++++++------- po/ru.po | 257 ++++++++++++++++++++++++++------- po/si.po | 256 ++++++++++++++++++++++++++------- po/sk.po | 234 ++++++++++++++++++++++++------ po/sl.po | 244 ++++++++++++++++++++++++------- po/sr_RS(a)cyrillic.po | 234 ++++++++++++++++++++++++------ po/sr_RS(a)latin.po | 234 ++++++++++++++++++++++++------ po/sv.po | 257 ++++++++++++++++++++++++++------- po/ta.po | 234 ++++++++++++++++++++++++------ po/te.po | 234 ++++++++++++++++++++++++------ po/th.po | 237 +++++++++++++++++++++++++------ po/tr.po | 256 ++++++++++++++++++++++++++------- po/uk.po | 257 ++++++++++++++++++++++++++------- po/wa.po | 237 +++++++++++++++++++++++++------ po/wine.pot | 234 ++++++++++++++++++++++++------ po/zh_CN.po | 257 ++++++++++++++++++++++++++------- po/zh_TW.po | 243 ++++++++++++++++++++++++------- programs/reg/reg.c | 14 +- programs/reg/reg.rc | 115 ++++++++++++++- 51 files changed, 10042 insertions(+), 2410 deletions(-) Diff:
https://source.winehq.org/git/wine.git/?a=commitdiff;h=e319a463a20b060c059d…
1
0
0
0
← Newer
1
...
22
23
24
25
26
27
28
...
117
Older →
Jump to page:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
Results per page:
10
25
50
100
200