ReactOS.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
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
List overview
Download
Ros-diffs
November 2019
----- 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
ros-diffs@reactos.org
24 participants
322 discussions
Start a n
N
ew thread
[reactos] 01/01: [MSG711.ACM] Sync with Wine Staging 4.18. CORE-16441
by Amine Khaldi
https://git.reactos.org/?p=reactos.git;a=commitdiff;h=9914d8b124d8cfb81061c…
commit 9914d8b124d8cfb81061c31fd684dabecfaffa12 Author: Amine Khaldi <amine.khaldi(a)reactos.org> AuthorDate: Sun Nov 10 14:02:55 2019 +0100 Commit: Amine Khaldi <amine.khaldi(a)reactos.org> CommitDate: Sun Nov 10 14:02:55 2019 +0100 [MSG711.ACM] Sync with Wine Staging 4.18. CORE-16441 --- dll/win32/msg711.acm/msg711.c | 5 ++--- media/doc/README.WINE | 2 +- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/dll/win32/msg711.acm/msg711.c b/dll/win32/msg711.acm/msg711.c index d20c89bfaff..6909494e29f 100644 --- a/dll/win32/msg711.acm/msg711.c +++ b/dll/win32/msg711.acm/msg711.c @@ -161,7 +161,7 @@ static inline void W16(unsigned char* dst, short s) * charge. * * SUN SOURCE CODE IS PROVIDED AS IS WITH NO WARRANTIES OF ANY KIND INCLUDING - * THE WARRANTIES OF DESIGN, MERCHANTIBILITY AND FITNESS FOR A PARTICULAR + * THE WARRANTIES OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR * PURPOSE, OR ARISING FROM A COURSE OF DEALING, USAGE OR TRADE PRACTICE. * * Sun source code is provided with no support and without any obligation on @@ -542,8 +542,7 @@ static inline unsigned char ulaw2alaw(unsigned char uval) { uval &= 0xff; - return (unsigned char) ((uval & 0x80) ? (0xD5 ^ (_u2a[0xFF ^ uval] - 1)) : - (unsigned char) (0x55 ^ (_u2a[0x7F ^ uval] - 1))); + return (uval & 0x80) ? (0xD5 ^ (_u2a[0xFF ^ uval] - 1)) : (0x55 ^ (_u2a[0x7F ^ uval] - 1)); } /* -------------------------------------------------------------------------------*/ diff --git a/media/doc/README.WINE b/media/doc/README.WINE index df8a8c6fd59..2cda2743636 100644 --- a/media/doc/README.WINE +++ b/media/doc/README.WINE @@ -109,7 +109,7 @@ dll/win32/mscms # Synced to WineStaging-4.18 dll/win32/mscoree # Synced to Wine-1.5.4 dll/win32/msctf # Synced to WineStaging-4.18 dll/win32/msftedit # Synced to WineStaging-4.18 -dll/win32/msg711.acm # Synced to WineStaging-4.0 +dll/win32/msg711.acm # Synced to WineStaging-4.18 dll/win32/msgsm32.acm # Synced to WineStaging-4.0 dll/win32/mshtml # Synced to WineStaging-1.7.55 dll/win32/mshtml.tlb # Synced to WineStaging-1.7.55
5 years, 1 month
1
0
0
0
[reactos] 01/01: [MEDIA][FONTS] Add Wine Wingdings (wingding.ttf) font (#2024)
by Katayama Hirofumi MZ
https://git.reactos.org/?p=reactos.git;a=commitdiff;h=5225a606cb957c6ff7a05…
commit 5225a606cb957c6ff7a053bd5107d330b96ee724 Author: Katayama Hirofumi MZ <katayama.hirofumi.mz(a)gmail.com> AuthorDate: Sun Nov 10 13:07:24 2019 +0900 Commit: GitHub <noreply(a)github.com> CommitDate: Sun Nov 10 13:07:24 2019 +0900 [MEDIA][FONTS] Add Wine Wingdings (wingding.ttf) font (#2024) Wine Wingdings font (wingding.ttf) is 9.30 KB and usable in ReactOS. CORE-16262 --- media/fonts/CMakeLists.txt | 3 ++- media/fonts/wingding.ttf | Bin 0 -> 9524 bytes 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/media/fonts/CMakeLists.txt b/media/fonts/CMakeLists.txt index 61cc87db140..3cede56d7d8 100644 --- a/media/fonts/CMakeLists.txt +++ b/media/fonts/CMakeLists.txt @@ -65,7 +65,8 @@ list(APPEND FONT_FILES verdanab.ttf verdanaz.ttf verdanai.ttf - verdana.ttf) + verdana.ttf + wingding.ttf) foreach(item ${FONT_FILES}) add_cd_file(FILE "${CMAKE_CURRENT_SOURCE_DIR}/${item}" DESTINATION reactos/Fonts FOR all) diff --git a/media/fonts/wingding.ttf b/media/fonts/wingding.ttf new file mode 100644 index 00000000000..c8ab8e1a8c5 Binary files /dev/null and b/media/fonts/wingding.ttf differ
5 years, 1 month
1
0
0
0
[reactos] 01/01: [MSFTEDIT] Sync with Wine Staging 4.18. CORE-16441
by Amine Khaldi
https://git.reactos.org/?p=reactos.git;a=commitdiff;h=f9a7523b63834a2457d3b…
commit f9a7523b63834a2457d3b6d39924024dbdcd4ee6 Author: Amine Khaldi <amine.khaldi(a)reactos.org> AuthorDate: Sat Nov 9 22:03:39 2019 +0100 Commit: Amine Khaldi <amine.khaldi(a)reactos.org> CommitDate: Sat Nov 9 22:03:39 2019 +0100 [MSFTEDIT] Sync with Wine Staging 4.18. CORE-16441 --- dll/win32/msftedit/msftedit_main.c | 3 --- media/doc/README.WINE | 2 +- 2 files changed, 1 insertion(+), 4 deletions(-) diff --git a/dll/win32/msftedit/msftedit_main.c b/dll/win32/msftedit/msftedit_main.c index b505999cdad..c578efafda3 100644 --- a/dll/win32/msftedit/msftedit_main.c +++ b/dll/win32/msftedit/msftedit_main.c @@ -19,9 +19,6 @@ * */ -#include "config.h" -#include "wine/port.h" - #include <stdarg.h> #include "windef.h" diff --git a/media/doc/README.WINE b/media/doc/README.WINE index efffbf63cda..df8a8c6fd59 100644 --- a/media/doc/README.WINE +++ b/media/doc/README.WINE @@ -108,7 +108,7 @@ dll/win32/mscat32 # Synced to WineStaging-4.18 dll/win32/mscms # Synced to WineStaging-4.18 dll/win32/mscoree # Synced to Wine-1.5.4 dll/win32/msctf # Synced to WineStaging-4.18 -dll/win32/msftedit # Synced to WineStaging-3.3 +dll/win32/msftedit # Synced to WineStaging-4.18 dll/win32/msg711.acm # Synced to WineStaging-4.0 dll/win32/msgsm32.acm # Synced to WineStaging-4.0 dll/win32/mshtml # Synced to WineStaging-1.7.55
5 years, 1 month
1
0
0
0
[reactos] 01/01: [MSCTF_WINETEST] Sync with Wine Staging 4.18. CORE-16441
by Amine Khaldi
https://git.reactos.org/?p=reactos.git;a=commitdiff;h=dd5a95e625cdff53278e7…
commit dd5a95e625cdff53278e731c7c757e8b1fe04881 Author: Amine Khaldi <amine.khaldi(a)reactos.org> AuthorDate: Sat Nov 9 22:03:01 2019 +0100 Commit: Amine Khaldi <amine.khaldi(a)reactos.org> CommitDate: Sat Nov 9 22:03:01 2019 +0100 [MSCTF_WINETEST] Sync with Wine Staging 4.18. CORE-16441 --- modules/rostests/winetests/msctf/inputprocessor.c | 186 +++++++++++++++++++++- 1 file changed, 180 insertions(+), 6 deletions(-) diff --git a/modules/rostests/winetests/msctf/inputprocessor.c b/modules/rostests/winetests/msctf/inputprocessor.c index 0d03ce3a8a1..1222085fe0a 100644 --- a/modules/rostests/winetests/msctf/inputprocessor.c +++ b/modules/rostests/winetests/msctf/inputprocessor.c @@ -64,7 +64,8 @@ static DWORD tmSinkCookie; static DWORD tmSinkRefCount; static DWORD dmSinkCookie; static DWORD documentStatus; -static DWORD key_trace_sink_cookie; +static DWORD key_trace_sink_cookie, ui_element_sink_cookie, profile_activation_sink_cookie; +static DWORD fake_service_onactivated_flags = 0; static ITfDocumentMgr *test_CurrentFocus = NULL; static ITfDocumentMgr *test_PrevFocus = NULL; static ITfDocumentMgr *test_LastCurrentFocus = FOCUS_SAVE; @@ -85,6 +86,7 @@ static INT test_ACP_InsertTextAtSelection = SINK_UNEXPECTED; static INT test_ACP_SetSelection = SINK_UNEXPECTED; static INT test_OnEndEdit = SINK_UNEXPECTED; +DEFINE_GUID(CLSID_FakeService, 0xEDE1A7AD,0x66DE,0x47E0,0xB6,0x20,0x3E,0x92,0xF8,0x24,0x6B,0xF3); static inline int expected_count(int *sink) { @@ -671,6 +673,115 @@ static const ITfKeyTraceEventSinkVtbl TfKeyTraceEventSinkVtbl = { static ITfKeyTraceEventSink TfKeyTraceEventSink = { &TfKeyTraceEventSinkVtbl }; +static HRESULT WINAPI TfUIElementSink_QueryInterface(ITfUIElementSink *iface, + REFIID riid, void **ppvObject) +{ + if(IsEqualGUID(&IID_IUnknown, riid) || IsEqualGUID(&IID_ITfUIElementSink, riid)){ + *ppvObject = iface; + return S_OK; + } + + *ppvObject = NULL; + return E_NOINTERFACE; +} + +static ULONG WINAPI TfUIElementSink_AddRef(ITfUIElementSink *iface) +{ + return 2; +} + +static ULONG WINAPI TfUIElementSink_Release(ITfUIElementSink *iface) +{ + return 1; +} + +static HRESULT WINAPI TfUIElementSink_BeginUIElement(ITfUIElementSink *iface, + DWORD id, BOOL *show) +{ + ok(0, "unexpected call\n"); + return E_NOTIMPL; +} + +static HRESULT WINAPI TfUIElementSink_UpdateUIElement(ITfUIElementSink *iface, + DWORD id) +{ + ok(0, "unexpected call\n"); + return E_NOTIMPL; +} + +static HRESULT WINAPI TfUIElementSink_EndUIElement(ITfUIElementSink *iface, + DWORD id) +{ + ok(0, "unexpected call\n"); + return E_NOTIMPL; +} + +static const ITfUIElementSinkVtbl TfUIElementSinkVtbl = { + TfUIElementSink_QueryInterface, + TfUIElementSink_AddRef, + TfUIElementSink_Release, + TfUIElementSink_BeginUIElement, + TfUIElementSink_UpdateUIElement, + TfUIElementSink_EndUIElement +}; + +static ITfUIElementSink TfUIElementSink = { &TfUIElementSinkVtbl }; + +static HRESULT WINAPI ProfileActivationSink_QueryInterface(ITfInputProcessorProfileActivationSink *iface, + REFIID riid, void **ppvObject) +{ + if(IsEqualGUID(&IID_IUnknown, riid) || IsEqualGUID(&IID_ITfInputProcessorProfileActivationSink, riid)){ + *ppvObject = iface; + return S_OK; + } + + *ppvObject = NULL; + return E_NOINTERFACE; +} + +static ULONG WINAPI ProfileActivationSink_AddRef(ITfInputProcessorProfileActivationSink *iface) +{ + return 2; +} + +static ULONG WINAPI ProfileActivationSink_Release(ITfInputProcessorProfileActivationSink *iface) +{ + return 1; +} + +static HRESULT WINAPI ProfileActivationSink_OnActivated(ITfInputProcessorProfileActivationSink *iface, + DWORD dwProfileType, LANGID langid, REFCLSID clsid, REFGUID catid, + REFGUID guidProfile, HKL hkl, DWORD dwFlags) +{ + trace("Got OnActivated: {dwProfileType %08x, langid %08x, clsid %s, catid %s, guidProfile %s, %p, dwFlags %08x}\n", + dwProfileType, langid, wine_dbgstr_guid(clsid), + wine_dbgstr_guid(catid), wine_dbgstr_guid(guidProfile), hkl, dwFlags); + + ok(dwProfileType == TF_PROFILETYPE_INPUTPROCESSOR || dwProfileType == TF_PROFILETYPE_KEYBOARDLAYOUT, + "unexpected dwProfileType: 0x%x\n", dwProfileType); + + if(dwProfileType == TF_PROFILETYPE_INPUTPROCESSOR && IsEqualGUID(&CLSID_FakeService, clsid)){ + if(dwFlags & TF_IPSINK_FLAG_ACTIVE){ + ok(test_ShouldActivate, "OnActivated: Activation came unexpectedly\n"); + } + + fake_service_onactivated_flags = dwFlags; + } + + return S_OK; +} + +static const ITfInputProcessorProfileActivationSinkVtbl TfInputProcessorProfileActivationSinkVtbl = { + ProfileActivationSink_QueryInterface, + ProfileActivationSink_AddRef, + ProfileActivationSink_Release, + ProfileActivationSink_OnActivated +}; + +static ITfInputProcessorProfileActivationSink TfInputProcessorProfileActivationSink = { + &TfInputProcessorProfileActivationSinkVtbl +}; + static HRESULT WINAPI TfTransitoryExtensionSink_QueryInterface(ITfTransitoryExtensionSink *iface, REFIID riid, void **ppv) { if(IsEqualGUID(&IID_IUnknown, riid) || IsEqualGUID(&IID_ITfTransitoryExtensionSink, riid)) { @@ -920,7 +1031,6 @@ static HRESULT UnregisterTextService(void) * The tests */ -DEFINE_GUID(CLSID_FakeService, 0xEDE1A7AD,0x66DE,0x47E0,0xB6,0x20,0x3E,0x92,0xF8,0x24,0x6B,0xF3); DEFINE_GUID(CLSID_TF_InputProcessorProfiles, 0x33c53a50,0xf456,0x4884,0xb0,0x49,0x85,0xfd,0x64,0x3e,0xcf,0xed); DEFINE_GUID(CLSID_TF_CategoryMgr, 0xA4B544A1,0x438D,0x4B41,0x93,0x25,0x86,0x95,0x23,0xE2,0xD6,0xC7); DEFINE_GUID(GUID_TFCAT_TIP_KEYBOARD, 0x34745c63,0xb2f0,0x4784,0x8b,0x67,0x5e,0x12,0xc8,0x70,0x1a,0x31); @@ -1128,7 +1238,7 @@ static void test_ThreadMgrAdviseSinks(void) tmSinkRefCount = 1; tmSinkCookie = 0; hr = ITfSource_AdviseSink(source,&IID_ITfThreadMgrEventSink, sink, &tmSinkCookie); - ok(hr == S_OK, "Failed to Advise Sink\n"); + ok(hr == S_OK, "Failed to Advise ITfThreadMgrEventSink\n"); ok(tmSinkCookie!=0,"Failed to get sink cookie\n"); /* Advising the sink adds a ref, Releasing here lets the object be deleted @@ -1138,7 +1248,15 @@ static void test_ThreadMgrAdviseSinks(void) hr = ITfSource_AdviseSink(source, &IID_ITfKeyTraceEventSink, (IUnknown*)&TfKeyTraceEventSink, &key_trace_sink_cookie); - ok(hr == S_OK, "Failed to Advise Sink\n"); + ok(hr == S_OK, "Failed to Advise ITfKeyTraceEventSink\n"); + + hr = ITfSource_AdviseSink(source, &IID_ITfUIElementSink, (IUnknown*)&TfUIElementSink, + &ui_element_sink_cookie); + ok(hr == S_OK, "Failed to Advise ITfUIElementSink\n"); + + hr = ITfSource_AdviseSink(source, &IID_ITfInputProcessorProfileActivationSink, (IUnknown*)&TfInputProcessorProfileActivationSink, + &profile_activation_sink_cookie); + ok(hr == S_OK, "Failed to Advise ITfInputProcessorProfileActivationSink\n"); ITfSource_Release(source); } @@ -1155,10 +1273,16 @@ static void test_ThreadMgrUnadviseSinks(void) tmSinkRefCount = 1; hr = ITfSource_UnadviseSink(source, tmSinkCookie); - ok(hr == S_OK, "Failed to unadvise Sink\n"); + ok(hr == S_OK, "Failed to unadvise ITfThreadMgrEventSink\n"); hr = ITfSource_UnadviseSink(source, key_trace_sink_cookie); - ok(hr == S_OK, "Failed to unadvise Sink\n"); + ok(hr == S_OK, "Failed to unadvise ITfKeyTraceEventSink\n"); + + hr = ITfSource_UnadviseSink(source, ui_element_sink_cookie); + ok(hr == S_OK, "Failed to unadvise ITfUIElementSink\n"); + + hr = ITfSource_UnadviseSink(source, profile_activation_sink_cookie); + ok(hr == S_OK, "Failed to unadvise ITfInputProcessorProfileActivationSink\n"); ITfSource_Release(source); } @@ -1557,6 +1681,8 @@ static void test_startSession(void) ok(SUCCEEDED(hr),"Failed to Activate\n"); ok(cid != tid,"TextService id mistakenly matches Client id\n"); + todo_wine ok(fake_service_onactivated_flags & TF_IPSINK_FLAG_ACTIVE, "Expected OnActivated callback\n"); + test_ShouldActivate = FALSE; hr = ITfThreadMgr_Activate(g_tm,&cid2); ok(SUCCEEDED(hr),"Failed to Activate\n"); @@ -2385,6 +2511,53 @@ static void test_profile_mgr(void) ITfInputProcessorProfileMgr_Release(ipp_mgr); } +static DWORD WINAPI test_MultiThreadApartment_Thread(void *param) { + ITfThreadMgrEx *thmgr; + ITfSource *source; + DWORD cookie; + HRESULT hr; + + hr = CoInitializeEx(NULL, COINIT_MULTITHREADED); + ok(SUCCEEDED(hr), "Failed to initialize multi-threaded apartment\n"); + + hr = CoCreateInstance(&CLSID_TF_ThreadMgr, NULL, CLSCTX_INPROC_SERVER, &IID_ITfThreadMgrEx, (LPVOID *)&thmgr); + ok(SUCCEEDED(hr), "Failed to create ITfThreadMgrEx instance\n"); + + hr = ITfThreadMgrEx_QueryInterface(thmgr, &IID_ITfSource, (LPVOID *)&source); + ok(SUCCEEDED(hr), "Failed to query ITfSource interface\n"); + + hr = ITfSource_AdviseSink(source, &IID_ITfUIElementSink, (IUnknown*)&TfUIElementSink, &cookie); + ok(hr == REGDB_E_IIDNOTREG /* native */ || hr == E_NOINTERFACE /* wine */, + "Advise ITfUIElementSink should return marshalling failure: %08x\n", hr); + + hr = ITfSource_Release(source); + ok(SUCCEEDED(hr), "Failed to Release source\n"); + + hr = ITfThreadMgrEx_Release(thmgr); + ok(SUCCEEDED(hr), "Failed to Release thread manager\n"); + + CoUninitialize(); + + return 0xdeadcafe; +} + +static void test_MultiThreadApartment(void) +{ + DWORD ret; + HANDLE thread; + + thread = CreateThread(0, 0, test_MultiThreadApartment_Thread, 0, 0, 0); + ok(thread != NULL, "Failed to create test thread\n"); + + ret = WaitForSingleObject(thread, INFINITE); + ok(ret == WAIT_OBJECT_0, "Failed to wait for thread completion\n"); + + GetExitCodeThread(thread, &ret); + ok(ret == 0xdeadcafe, "Thread terminated in an unexpected way\n"); + + CloseHandle(thread); +} + START_TEST(inputprocessor) { if (SUCCEEDED(initialize())) @@ -2414,6 +2587,7 @@ START_TEST(inputprocessor) test_UnregisterCategory(); test_Unregister(); test_profile_mgr(); + test_MultiThreadApartment(); ITextStoreACPSink_Release(ACPSink); ITfDocumentMgr_Release(g_dm);
5 years, 1 month
1
0
0
0
[reactos] 01/01: [MSCTF] Sync with Wine Staging 4.18. CORE-16441
by Amine Khaldi
https://git.reactos.org/?p=reactos.git;a=commitdiff;h=ac50127e48d3bceda3521…
commit ac50127e48d3bceda35215b5adc3ba83a0f3645e Author: Amine Khaldi <amine.khaldi(a)reactos.org> AuthorDate: Sat Nov 9 22:02:02 2019 +0100 Commit: Amine Khaldi <amine.khaldi(a)reactos.org> CommitDate: Sat Nov 9 22:02:02 2019 +0100 [MSCTF] Sync with Wine Staging 4.18. CORE-16441 --- dll/win32/msctf/categorymgr.c | 22 ++++----- dll/win32/msctf/compartmentmgr.c | 4 -- dll/win32/msctf/context.c | 98 ++++++++++++++++++++++++++++++++++++---- dll/win32/msctf/documentmgr.c | 12 ++--- dll/win32/msctf/inputprocessor.c | 32 ++++++------- dll/win32/msctf/msctf.c | 2 - dll/win32/msctf/msctf_internal.h | 3 ++ dll/win32/msctf/precomp.h | 4 +- dll/win32/msctf/range.c | 4 -- dll/win32/msctf/threadmgr.c | 33 ++++++++++++-- media/doc/README.WINE | 2 +- 11 files changed, 155 insertions(+), 61 deletions(-) diff --git a/dll/win32/msctf/categorymgr.c b/dll/win32/msctf/categorymgr.c index ad43833d621..ccba097331e 100644 --- a/dll/win32/msctf/categorymgr.c +++ b/dll/win32/msctf/categorymgr.c @@ -18,9 +18,10 @@ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA */ -#include "config.h" - #include <stdarg.h> +#ifdef __REACTOS__ +#include <wchar.h> +#endif #define COBJMACROS @@ -33,7 +34,6 @@ #include "winerror.h" #include "objbase.h" -#include "wine/unicode.h" #include "msctf.h" #include "msctf_internal.h" @@ -115,7 +115,7 @@ static HRESULT WINAPI CategoryMgr_RegisterCategory ( ITfCategoryMgr *iface, TRACE("(%p) %s %s %s\n",This,debugstr_guid(rclsid), debugstr_guid(rcatid), debugstr_guid(rguid)); StringFromGUID2(rclsid, buf, 39); - sprintfW(fullkey,fmt,szwSystemTIPKey,buf); + swprintf(fullkey,fmt,szwSystemTIPKey,buf); if (RegOpenKeyExW(HKEY_LOCAL_MACHINE,fullkey, 0, KEY_READ | KEY_WRITE, &tipkey ) != ERROR_SUCCESS) @@ -123,7 +123,7 @@ static HRESULT WINAPI CategoryMgr_RegisterCategory ( ITfCategoryMgr *iface, StringFromGUID2(rcatid, buf, 39); StringFromGUID2(rguid, buf2, 39); - sprintfW(fullkey,fmt2,ctg,ctg,buf,buf2); + swprintf(fullkey,fmt2,ctg,ctg,buf,buf2); res = RegCreateKeyExW(tipkey, fullkey, 0, NULL, 0, KEY_READ | KEY_WRITE, NULL, &catkey, NULL); @@ -131,7 +131,7 @@ static HRESULT WINAPI CategoryMgr_RegisterCategory ( ITfCategoryMgr *iface, if (!res) { - sprintfW(fullkey,fmt2,ctg,itm,buf2,buf); + swprintf(fullkey,fmt2,ctg,itm,buf2,buf); res = RegCreateKeyExW(tipkey, fullkey, 0, NULL, 0, KEY_READ | KEY_WRITE, NULL, &itmkey, NULL); @@ -163,7 +163,7 @@ static HRESULT WINAPI CategoryMgr_UnregisterCategory ( ITfCategoryMgr *iface, TRACE("(%p) %s %s %s\n",This,debugstr_guid(rclsid), debugstr_guid(rcatid), debugstr_guid(rguid)); StringFromGUID2(rclsid, buf, 39); - sprintfW(fullkey,fmt,szwSystemTIPKey,buf); + swprintf(fullkey,fmt,szwSystemTIPKey,buf); if (RegOpenKeyExW(HKEY_LOCAL_MACHINE,fullkey, 0, KEY_READ | KEY_WRITE, &tipkey ) != ERROR_SUCCESS) @@ -171,11 +171,9 @@ static HRESULT WINAPI CategoryMgr_UnregisterCategory ( ITfCategoryMgr *iface, StringFromGUID2(rcatid, buf, 39); StringFromGUID2(rguid, buf2, 39); - sprintfW(fullkey,fmt2,ctg,ctg,buf,buf2); - - sprintfW(fullkey,fmt2,ctg,itm,buf2,buf); + swprintf(fullkey,fmt2,ctg,ctg,buf,buf2); RegDeleteTreeW(tipkey, fullkey); - sprintfW(fullkey,fmt2,ctg,itm,buf2,buf); + swprintf(fullkey,fmt2,ctg,itm,buf2,buf); RegDeleteTreeW(tipkey, fullkey); RegCloseKey(tipkey); @@ -216,7 +214,7 @@ static HRESULT WINAPI CategoryMgr_FindClosestCategory ( ITfCategoryMgr *iface, return E_INVALIDARG; StringFromGUID2(rguid, buf, 39); - sprintfW(fullkey,fmt,szwSystemTIPKey,buf,buf); + swprintf(fullkey,fmt,szwSystemTIPKey,buf,buf); *pcatid = GUID_NULL; if (RegOpenKeyExW(HKEY_LOCAL_MACHINE,fullkey, 0, KEY_READ, &key ) != diff --git a/dll/win32/msctf/compartmentmgr.c b/dll/win32/msctf/compartmentmgr.c index 4fe7b82f94f..4cc25f3f9ab 100644 --- a/dll/win32/msctf/compartmentmgr.c +++ b/dll/win32/msctf/compartmentmgr.c @@ -18,8 +18,6 @@ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA */ -#include "config.h" - #include <stdarg.h> #define COBJMACROS @@ -35,8 +33,6 @@ #include "oleauto.h" #include "olectl.h" -#include "wine/unicode.h" - #include "msctf.h" #include "msctf_internal.h" diff --git a/dll/win32/msctf/context.c b/dll/win32/msctf/context.c index 452895c07e3..63f2bf5455d 100644 --- a/dll/win32/msctf/context.c +++ b/dll/win32/msctf/context.c @@ -18,8 +18,6 @@ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA */ -#include "config.h" - #include <stdarg.h> #define COBJMACROS @@ -34,8 +32,6 @@ #include "objbase.h" #include "olectl.h" -#include "wine/unicode.h" - #include "msctf.h" #include "msctf_internal.h" @@ -45,7 +41,7 @@ typedef struct tagContext { ITfContext ITfContext_iface; ITfSource ITfSource_iface; /* const ITfContextCompositionVtbl *ContextCompositionVtbl; */ - /* const ITfContextOwnerCompositionServicesVtbl *ContextOwnerCompositionServicesVtbl; */ + ITfContextOwnerCompositionServices ITfContextOwnerCompositionServices_iface; /* const ITfContextOwnerServicesVtbl *ContextOwnerServicesVtbl; */ ITfInsertAtSelection ITfInsertAtSelection_iface; /* const ITfMouseTrackerVtbl *MouseTrackerVtbl; */ @@ -93,6 +89,11 @@ static inline Context *impl_from_ITfSource(ITfSource *iface) return CONTAINING_RECORD(iface, Context, ITfSource_iface); } +static inline Context *impl_from_ITfContextOwnerCompositionServices(ITfContextOwnerCompositionServices *iface) +{ + return CONTAINING_RECORD(iface, Context, ITfContextOwnerCompositionServices_iface); +} + static inline Context *impl_from_ITfInsertAtSelection(ITfInsertAtSelection *iface) { return CONTAINING_RECORD(iface, Context, ITfInsertAtSelection_iface); @@ -154,6 +155,10 @@ static HRESULT WINAPI Context_QueryInterface(ITfContext *iface, REFIID iid, LPVO { *ppvOut = &This->ITfSource_iface; } + else if (IsEqualIID(iid, &IID_ITfContextOwnerCompositionServices)) + { + *ppvOut = &This->ITfContextOwnerCompositionServices_iface; + } else if (IsEqualIID(iid, &IID_ITfInsertAtSelection)) { *ppvOut = &This->ITfInsertAtSelection_iface; @@ -530,6 +535,9 @@ static const ITfContextVtbl ContextVtbl = Context_CreateRangeBackup }; +/***************************************************** + * ITfSource functions + *****************************************************/ static HRESULT WINAPI ContextSource_QueryInterface(ITfSource *iface, REFIID iid, LPVOID *ppvOut) { Context *This = impl_from_ITfSource(iface); @@ -548,9 +556,6 @@ static ULONG WINAPI ContextSource_Release(ITfSource *iface) return ITfContext_Release(&This->ITfContext_iface); } -/***************************************************** - * ITfSource functions - *****************************************************/ static HRESULT WINAPI ContextSource_AdviseSink(ITfSource *iface, REFIID riid, IUnknown *punk, DWORD *pdwCookie) { @@ -589,6 +594,80 @@ static const ITfSourceVtbl ContextSourceVtbl = ContextSource_UnadviseSink }; +/***************************************************** + * ITfContextOwnerCompositionServices functions + *****************************************************/ +static HRESULT WINAPI ContextOwnerCompositionServices_QueryInterface(ITfContextOwnerCompositionServices *iface, + REFIID iid, LPVOID *ppvOut) +{ + Context *This = impl_from_ITfContextOwnerCompositionServices(iface); + return ITfContext_QueryInterface(&This->ITfContext_iface, iid, ppvOut); +} + +static ULONG WINAPI ContextOwnerCompositionServices_AddRef(ITfContextOwnerCompositionServices *iface) +{ + Context *This = impl_from_ITfContextOwnerCompositionServices(iface); + return ITfContext_AddRef(&This->ITfContext_iface); +} + +static ULONG WINAPI ContextOwnerCompositionServices_Release(ITfContextOwnerCompositionServices *iface) +{ + Context *This = impl_from_ITfContextOwnerCompositionServices(iface); + return ITfContext_Release(&This->ITfContext_iface); +} + +static HRESULT WINAPI ContextOwnerCompositionServices_StartComposition(ITfContextOwnerCompositionServices *iface, + TfEditCookie ecWrite, ITfRange *pCompositionRange, ITfCompositionSink *pSink, ITfComposition **ppComposition) +{ + Context *This = impl_from_ITfContextOwnerCompositionServices(iface); + FIXME("STUB:(%p) %#x %p %p %p\n", This, ecWrite, pCompositionRange, pSink, ppComposition); + return E_NOTIMPL; +} + +static HRESULT WINAPI ContextOwnerCompositionServices_EnumCompositions(ITfContextOwnerCompositionServices *iface, + IEnumITfCompositionView **ppEnum) +{ + Context *This = impl_from_ITfContextOwnerCompositionServices(iface); + FIXME("STUB:(%p) %p\n", This, ppEnum); + return E_NOTIMPL; +} + +static HRESULT WINAPI ContextOwnerCompositionServices_FindComposition(ITfContextOwnerCompositionServices *iface, + TfEditCookie ecRead, ITfRange *pTestRange, IEnumITfCompositionView **ppEnum) +{ + Context *This = impl_from_ITfContextOwnerCompositionServices(iface); + FIXME("STUB:(%p) %#x %p %p\n", This, ecRead, pTestRange, ppEnum); + return E_NOTIMPL; +} + +static HRESULT WINAPI ContextOwnerCompositionServices_TakeOwnership(ITfContextOwnerCompositionServices *iface, + TfEditCookie ecWrite, ITfCompositionView *pComposition, ITfCompositionSink *pSink, ITfComposition **ppComposition) +{ + Context *This = impl_from_ITfContextOwnerCompositionServices(iface); + FIXME("STUB:(%p) %#x %p %p %p\n", This, ecWrite, pComposition, pSink, ppComposition); + return E_NOTIMPL; +} + +static HRESULT WINAPI ContextOwnerCompositionServices_TerminateComposition(ITfContextOwnerCompositionServices *iface, + ITfCompositionView *pComposition) +{ + Context *This = impl_from_ITfContextOwnerCompositionServices(iface); + FIXME("STUB:(%p) %p\n", This, pComposition); + return E_NOTIMPL; +} + +static const ITfContextOwnerCompositionServicesVtbl ContextOwnerCompositionServicesVtbl = +{ + ContextOwnerCompositionServices_QueryInterface, + ContextOwnerCompositionServices_AddRef, + ContextOwnerCompositionServices_Release, + ContextOwnerCompositionServices_StartComposition, + ContextOwnerCompositionServices_EnumCompositions, + ContextOwnerCompositionServices_FindComposition, + ContextOwnerCompositionServices_TakeOwnership, + ContextOwnerCompositionServices_TerminateComposition +}; + /***************************************************** * ITfInsertAtSelection functions *****************************************************/ @@ -852,7 +931,7 @@ static HRESULT WINAPI TextStoreACPSink_OnLockGranted(ITextStoreACPSink *iface, /*TODO: implement ITfEditRecord */ SINK_FOR_EACH(cursor, &This->pTextEditSink, ITfTextEditSink, sink) { - ITfTextEditSink_OnEndEdit(sink, (ITfContext*) &This->ITfContext_iface, sc, NULL); + ITfTextEditSink_OnEndEdit(sink, &This->ITfContext_iface, sc, NULL); } sinkcookie = remove_Cookie(sc); } @@ -985,6 +1064,7 @@ HRESULT Context_Constructor(TfClientId tidOwner, IUnknown *punk, ITfDocumentMgr This->ITfContext_iface.lpVtbl= &ContextVtbl; This->ITfSource_iface.lpVtbl = &ContextSourceVtbl; + This->ITfContextOwnerCompositionServices_iface.lpVtbl = &ContextOwnerCompositionServicesVtbl; This->ITfInsertAtSelection_iface.lpVtbl = &InsertAtSelectionVtbl; This->ITfSourceSingle_iface.lpVtbl = &ContextSourceSingleVtbl; This->ITextStoreACPSink_iface.lpVtbl = &TextStoreACPSinkVtbl; diff --git a/dll/win32/msctf/documentmgr.c b/dll/win32/msctf/documentmgr.c index 9fa6b0f0ddf..44856db632b 100644 --- a/dll/win32/msctf/documentmgr.c +++ b/dll/win32/msctf/documentmgr.c @@ -18,8 +18,6 @@ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA */ -#include "config.h" - #include <stdarg.h> #define COBJMACROS @@ -33,8 +31,6 @@ #include "winerror.h" #include "objbase.h" -#include "wine/unicode.h" - #include "msctf.h" #include "msctf_internal.h" @@ -81,11 +77,15 @@ static inline EnumTfContext *impl_from_IEnumTfContexts(IEnumTfContexts *iface) static void DocumentMgr_Destructor(DocumentMgr *This) { - ITfThreadMgr *tm; + ITfThreadMgr *tm = NULL; TRACE("destroying %p\n", This); TF_GetThreadMgr(&tm); - ThreadMgr_OnDocumentMgrDestruction(tm, &This->ITfDocumentMgr_iface); + if (tm) + { + ThreadMgr_OnDocumentMgrDestruction(tm, &This->ITfDocumentMgr_iface); + ITfThreadMgr_Release(tm); + } if (This->contextStack[0]) ITfContext_Release(This->contextStack[0]); diff --git a/dll/win32/msctf/inputprocessor.c b/dll/win32/msctf/inputprocessor.c index fdeba38b377..621ac96a984 100644 --- a/dll/win32/msctf/inputprocessor.c +++ b/dll/win32/msctf/inputprocessor.c @@ -18,8 +18,6 @@ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA */ -#include "config.h" - #include <stdarg.h> #define COBJMACROS @@ -29,13 +27,15 @@ #include "winbase.h" #include "winreg.h" #include "winuser.h" +#ifdef __REACTOS__ +#include <wchar.h> +#include <winnls.h> +#endif #include "shlwapi.h" #include "winerror.h" #include "objbase.h" #include "olectl.h" -#include "wine/unicode.h" - #include "msctf.h" #include "msctf_internal.h" @@ -230,7 +230,7 @@ static void add_userkey( REFCLSID rclsid, LANGID langid, StringFromGUID2(rclsid, buf, 39); StringFromGUID2(guidProfile, buf2, 39); - sprintfW(fullkey,szwFullLangfmt,szwSystemTIPKey,buf,szwLngp,langid,buf2); + swprintf(fullkey,szwFullLangfmt,szwSystemTIPKey,buf,szwLngp,langid,buf2); res = RegCreateKeyExW(HKEY_CURRENT_USER,fullkey, 0, NULL, 0, KEY_READ | KEY_WRITE, NULL, &key, &disposition); @@ -303,7 +303,7 @@ static HRESULT WINAPI InputProcessorProfiles_Register( TRACE("(%p) %s\n",This,debugstr_guid(rclsid)); StringFromGUID2(rclsid, buf, 39); - sprintfW(fullkey,szwTipfmt,szwSystemTIPKey,buf); + swprintf(fullkey,szwTipfmt,szwSystemTIPKey,buf); if (RegCreateKeyExW(HKEY_LOCAL_MACHINE,fullkey, 0, NULL, 0, KEY_READ | KEY_WRITE, NULL, &tipkey, NULL) != ERROR_SUCCESS) @@ -324,7 +324,7 @@ static HRESULT WINAPI InputProcessorProfiles_Unregister( TRACE("(%p) %s\n",This,debugstr_guid(rclsid)); StringFromGUID2(rclsid, buf, 39); - sprintfW(fullkey,szwTipfmt,szwSystemTIPKey,buf); + swprintf(fullkey,szwTipfmt,szwSystemTIPKey,buf); RegDeleteTreeW(HKEY_LOCAL_MACHINE, fullkey); RegDeleteTreeW(HKEY_CURRENT_USER, fullkey); @@ -355,14 +355,14 @@ static HRESULT WINAPI InputProcessorProfiles_AddLanguageProfile( debugstr_wn(pchIconFile,cchFile),uIconIndex); StringFromGUID2(rclsid, buf, 39); - sprintfW(fullkey,szwTipfmt,szwSystemTIPKey,buf); + swprintf(fullkey,szwTipfmt,szwSystemTIPKey,buf); if (RegOpenKeyExW(HKEY_LOCAL_MACHINE,fullkey, 0, KEY_READ | KEY_WRITE, &tipkey ) != ERROR_SUCCESS) return E_FAIL; StringFromGUID2(guidProfile, buf, 39); - sprintfW(fullkey,fmt2,szwLngp,langid,buf); + swprintf(fullkey,fmt2,szwLngp,langid,buf); res = RegCreateKeyExW(tipkey,fullkey, 0, NULL, 0, KEY_READ | KEY_WRITE, NULL, &fmtkey, &disposition); @@ -421,7 +421,7 @@ static HRESULT WINAPI InputProcessorProfiles_GetDefaultLanguageProfile( return E_INVALIDARG; StringFromGUID2(catid, buf, 39); - sprintfW(fullkey, szwDefaultFmt, szwSystemCTFKey, szwAssemblies, langid, buf); + swprintf(fullkey, szwDefaultFmt, szwSystemCTFKey, szwAssemblies, langid, buf); if (RegOpenKeyExW(HKEY_CURRENT_USER, fullkey, 0, KEY_READ | KEY_WRITE, &hkey ) != ERROR_SUCCESS) @@ -480,7 +480,7 @@ static HRESULT WINAPI InputProcessorProfiles_SetDefaultLanguageProfile( return E_FAIL; StringFromGUID2(&catid, buf, 39); - sprintfW(fullkey, szwDefaultFmt, szwSystemCTFKey, szwAssemblies, langid, buf); + swprintf(fullkey, szwDefaultFmt, szwSystemCTFKey, szwAssemblies, langid, buf); if (RegCreateKeyExW(HKEY_CURRENT_USER, fullkey, 0, NULL, 0, KEY_READ | KEY_WRITE, NULL, &hkey, NULL ) != ERROR_SUCCESS) @@ -644,7 +644,7 @@ static HRESULT WINAPI InputProcessorProfiles_EnableLanguageProfile( StringFromGUID2(rclsid, buf, 39); StringFromGUID2(guidProfile, buf2, 39); - sprintfW(fullkey,szwFullLangfmt,szwSystemTIPKey,buf,szwLngp,langid,buf2); + swprintf(fullkey,szwFullLangfmt,szwSystemTIPKey,buf,szwLngp,langid,buf2); res = RegOpenKeyExW(HKEY_CURRENT_USER, fullkey, 0, KEY_READ | KEY_WRITE, &key); @@ -677,7 +677,7 @@ static HRESULT WINAPI InputProcessorProfiles_IsEnabledLanguageProfile( StringFromGUID2(rclsid, buf, 39); StringFromGUID2(guidProfile, buf2, 39); - sprintfW(fullkey,szwFullLangfmt,szwSystemTIPKey,buf,szwLngp,langid,buf2); + swprintf(fullkey,szwFullLangfmt,szwSystemTIPKey,buf,szwLngp,langid,buf2); res = RegOpenKeyExW(HKEY_CURRENT_USER, fullkey, 0, KEY_READ | KEY_WRITE, &key); @@ -721,7 +721,7 @@ static HRESULT WINAPI InputProcessorProfiles_EnableLanguageProfileByDefault( StringFromGUID2(rclsid, buf, 39); StringFromGUID2(guidProfile, buf2, 39); - sprintfW(fullkey,szwFullLangfmt,szwSystemTIPKey,buf,szwLngp,langid,buf2); + swprintf(fullkey,szwFullLangfmt,szwSystemTIPKey,buf,szwLngp,langid,buf2); res = RegOpenKeyExW(HKEY_LOCAL_MACHINE, fullkey, 0, KEY_READ | KEY_WRITE, &key); @@ -1191,7 +1191,7 @@ static INT next_LanguageProfile(EnumTfLanguageProfiles *This, CLSID clsid, TF_LA if (This->langkey == NULL) { - sprintfW(fullkey,fmt,This->szwCurrentClsid,szwLngp,This->langid); + swprintf(fullkey,fmt,This->szwCurrentClsid,szwLngp,This->langid); res = RegOpenKeyExW(This->tipkey, fullkey, 0, KEY_READ | KEY_WRITE, &This->langkey); if (res) { @@ -1315,7 +1315,7 @@ static HRESULT WINAPI EnumTfLanguageProfiles_Clone( IEnumTfLanguageProfiles *ifa WCHAR fullkey[168]; static const WCHAR fmt[] = {'%','s','\\','%','s','\\','0','x','%','0','8','x',0}; - sprintfW(fullkey,fmt,This->szwCurrentClsid,szwLngp,This->langid); + swprintf(fullkey,fmt,This->szwCurrentClsid,szwLngp,This->langid); res = RegOpenKeyExW(new_This->tipkey, fullkey, 0, KEY_READ | KEY_WRITE, &This->langkey); new_This->lang_index = This->lang_index; } diff --git a/dll/win32/msctf/msctf.c b/dll/win32/msctf/msctf.c index a19eaa1d338..c6e3a2ca597 100644 --- a/dll/win32/msctf/msctf.c +++ b/dll/win32/msctf/msctf.c @@ -18,8 +18,6 @@ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA */ -#include "config.h" - #include <stdarg.h> #include <stdio.h> diff --git a/dll/win32/msctf/msctf_internal.h b/dll/win32/msctf/msctf_internal.h index 9d375483616..9d60e18e6f3 100644 --- a/dll/win32/msctf/msctf_internal.h +++ b/dll/win32/msctf/msctf_internal.h @@ -32,6 +32,9 @@ #define COOKIE_MAGIC_DMSINK 0x0070 #define COOKIE_MAGIC_THREADFOCUSSINK 0x0080 #define COOKIE_MAGIC_KEYTRACESINK 0x0090 +#define COOKIE_MAGIC_UIELEMENTSINK 0x00a0 +#define COOKIE_MAGIC_INPUTPROCESSORPROFILEACTIVATIONSINK 0x00b0 +#define COOKIE_MAGIC_ACTIVELANGSINK 0x00c0 extern DWORD tlsIndex DECLSPEC_HIDDEN; extern TfClientId processId DECLSPEC_HIDDEN; diff --git a/dll/win32/msctf/precomp.h b/dll/win32/msctf/precomp.h index 7e05cac46cc..8ec1662cb1b 100644 --- a/dll/win32/msctf/precomp.h +++ b/dll/win32/msctf/precomp.h @@ -2,9 +2,8 @@ #ifndef _MSCTF_PRECOMP_H #define _MSCTF_PRECOMP_H -#include <wine/config.h> - #include <stdarg.h> +#include <wchar.h> #define WIN32_NO_STATUS #define _INC_WINDOWS @@ -21,7 +20,6 @@ #include <shlwapi.h> #include <wine/list.h> -#include <wine/unicode.h> #include <wine/debug.h> #include "msctf_internal.h" diff --git a/dll/win32/msctf/range.c b/dll/win32/msctf/range.c index dca8983efdb..c4eee2501fb 100644 --- a/dll/win32/msctf/range.c +++ b/dll/win32/msctf/range.c @@ -18,8 +18,6 @@ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA */ -#include "config.h" - #include <stdarg.h> #define COBJMACROS @@ -33,8 +31,6 @@ #include "winerror.h" #include "objbase.h" -#include "wine/unicode.h" - #include "msctf.h" #include "msctf_internal.h" diff --git a/dll/win32/msctf/threadmgr.c b/dll/win32/msctf/threadmgr.c index 5338e7271c5..16e261539ac 100644 --- a/dll/win32/msctf/threadmgr.c +++ b/dll/win32/msctf/threadmgr.c @@ -18,8 +18,6 @@ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA */ -#include "config.h" - #include <stdarg.h> #define COBJMACROS @@ -34,8 +32,6 @@ #include "objbase.h" #include "olectl.h" -#include "wine/unicode.h" - #include "msctf.h" #include "msctf_internal.h" @@ -100,6 +96,8 @@ typedef struct tagACLMulti { struct list PreservedKeyNotifySink; struct list ThreadFocusSink; struct list ThreadMgrEventSink; + struct list UIElementSink; + struct list InputProcessorProfileActivationSink; } ThreadMgr; typedef struct tagEnumTfDocumentMgr { @@ -176,6 +174,8 @@ static void ThreadMgr_Destructor(ThreadMgr *This) free_sinks(&This->PreservedKeyNotifySink); free_sinks(&This->ThreadFocusSink); free_sinks(&This->ThreadMgrEventSink); + free_sinks(&This->UIElementSink); + free_sinks(&This->InputProcessorProfileActivationSink); LIST_FOR_EACH_SAFE(cursor, cursor2, &This->CurrentPreservedKeys) { @@ -621,6 +621,13 @@ static HRESULT WINAPI ThreadMgrSource_AdviseSink(ITfSource *iface, return advise_sink(&This->ThreadFocusSink, &IID_ITfThreadFocusSink, COOKIE_MAGIC_THREADFOCUSSINK, punk, pdwCookie); } + if (IsEqualIID(riid, &IID_ITfActiveLanguageProfileNotifySink)) + { + WARN("semi-stub for ITfActiveLanguageProfileNotifySink: sink won't be used.\n"); + return advise_sink(&This->ActiveLanguageProfileNotifySink, &IID_ITfActiveLanguageProfileNotifySink, + COOKIE_MAGIC_ACTIVELANGSINK, punk, pdwCookie); + } + if (IsEqualIID(riid, &IID_ITfKeyTraceEventSink)) { WARN("semi-stub for ITfKeyTraceEventSink: sink won't be used.\n"); @@ -628,6 +635,20 @@ static HRESULT WINAPI ThreadMgrSource_AdviseSink(ITfSource *iface, COOKIE_MAGIC_KEYTRACESINK, punk, pdwCookie); } + if (IsEqualIID(riid, &IID_ITfUIElementSink)) + { + WARN("semi-stub for ITfUIElementSink: sink won't be used.\n"); + return advise_sink(&This->UIElementSink, &IID_ITfUIElementSink, + COOKIE_MAGIC_UIELEMENTSINK, punk, pdwCookie); + } + + if (IsEqualIID(riid, &IID_ITfInputProcessorProfileActivationSink)) + { + WARN("semi-stub for ITfInputProcessorProfileActivationSink: sink won't be used.\n"); + return advise_sink(&This->InputProcessorProfileActivationSink, &IID_ITfInputProcessorProfileActivationSink, + COOKIE_MAGIC_INPUTPROCESSORPROFILEACTIVATIONSINK, punk, pdwCookie); + } + FIXME("(%p) Unhandled Sink: %s\n",This,debugstr_guid(riid)); return E_NOTIMPL; } @@ -641,6 +662,8 @@ static HRESULT WINAPI ThreadMgrSource_UnadviseSink(ITfSource *iface, DWORD pdwCo magic = get_Cookie_magic(pdwCookie); if (magic != COOKIE_MAGIC_TMSINK && magic != COOKIE_MAGIC_THREADFOCUSSINK + && magic != COOKIE_MAGIC_KEYTRACESINK && magic != COOKIE_MAGIC_UIELEMENTSINK + && magic != COOKIE_MAGIC_INPUTPROCESSORPROFILEACTIVATIONSINK && magic != COOKIE_MAGIC_KEYTRACESINK) return E_INVALIDARG; @@ -1358,6 +1381,8 @@ HRESULT ThreadMgr_Constructor(IUnknown *pUnkOuter, IUnknown **ppOut) list_init(&This->PreservedKeyNotifySink); list_init(&This->ThreadFocusSink); list_init(&This->ThreadMgrEventSink); + list_init(&This->UIElementSink); + list_init(&This->InputProcessorProfileActivationSink); TRACE("returning %p\n", This); *ppOut = (IUnknown *)&This->ITfThreadMgrEx_iface; diff --git a/media/doc/README.WINE b/media/doc/README.WINE index 3c7b0a15c26..efffbf63cda 100644 --- a/media/doc/README.WINE +++ b/media/doc/README.WINE @@ -107,7 +107,7 @@ dll/win32/msadp32.acm # Synced to WineStaging-4.0 dll/win32/mscat32 # Synced to WineStaging-4.18 dll/win32/mscms # Synced to WineStaging-4.18 dll/win32/mscoree # Synced to Wine-1.5.4 -dll/win32/msctf # Synced to WineStaging-4.0 +dll/win32/msctf # Synced to WineStaging-4.18 dll/win32/msftedit # Synced to WineStaging-3.3 dll/win32/msg711.acm # Synced to WineStaging-4.0 dll/win32/msgsm32.acm # Synced to WineStaging-4.0
5 years, 1 month
1
0
0
0
[reactos] 01/01: [PSDK] Update msctf.idl. CORE-16441
by Amine Khaldi
https://git.reactos.org/?p=reactos.git;a=commitdiff;h=4c4918afe9fc5daadfd32…
commit 4c4918afe9fc5daadfd32337bf448f6711b07b9b Author: Amine Khaldi <amine.khaldi(a)reactos.org> AuthorDate: Sat Nov 9 22:01:26 2019 +0100 Commit: Amine Khaldi <amine.khaldi(a)reactos.org> CommitDate: Sat Nov 9 22:01:26 2019 +0100 [PSDK] Update msctf.idl. CORE-16441 --- sdk/include/psdk/msctf.idl | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/sdk/include/psdk/msctf.idl b/sdk/include/psdk/msctf.idl index 01e944cf5df..5ef33119fd8 100644 --- a/sdk/include/psdk/msctf.idl +++ b/sdk/include/psdk/msctf.idl @@ -1136,6 +1136,25 @@ interface ITfKeyTraceEventSink : IUnknown [in] LPARAM lParam); } +[ + object, + local, + uuid(ea1ea136-19df-11d7-a6d2-00065b84435c), + pointer_default(unique) +] +interface ITfUIElementSink : IUnknown +{ + HRESULT BeginUIElement( + [in] DWORD id, + [in, out] BOOL *show); + + HRESULT UpdateUIElement( + [in] DWORD id); + + HRESULT EndUIElement( + [in] DWORD id); +} + [ object, local,
5 years, 1 month
1
0
0
0
[reactos] 01/01: [MSCMS_WINETEST] Sync with Wine Staging 4.18. CORE-16441
by Amine Khaldi
https://git.reactos.org/?p=reactos.git;a=commitdiff;h=d38c95ba1e546779e3752…
commit d38c95ba1e546779e37522dd6c6cf736dbd9d4e1 Author: Amine Khaldi <amine.khaldi(a)reactos.org> AuthorDate: Sat Nov 9 21:59:57 2019 +0100 Commit: Amine Khaldi <amine.khaldi(a)reactos.org> CommitDate: Sat Nov 9 21:59:57 2019 +0100 [MSCMS_WINETEST] Sync with Wine Staging 4.18. CORE-16441 --- modules/rostests/winetests/mscms/profile.c | 33 ++++++++++++++++-------------- 1 file changed, 18 insertions(+), 15 deletions(-) diff --git a/modules/rostests/winetests/mscms/profile.c b/modules/rostests/winetests/mscms/profile.c index c4ea7f2c9fe..2ef20129e63 100644 --- a/modules/rostests/winetests/mscms/profile.c +++ b/modules/rostests/winetests/mscms/profile.c @@ -660,35 +660,36 @@ static void test_EnumColorProfilesA( char *standardprofile ) record.dwDataColorSpace = SPACE_RGB; total = 0; + SetLastError( 0xdeadbeef ); ret = pEnumColorProfilesA( NULL, &record, NULL, &total, &number ); - ok( !ret, "EnumColorProfilesA() failed (%d)\n", GetLastError() ); + ok( !ret, "EnumColorProfilesA succeeded\n" ); + if (have_color_profile) ok( GetLastError() == ERROR_INSUFFICIENT_BUFFER, "got %u\n", GetLastError() ); buffer = HeapAlloc( GetProcessHeap(), 0, total ); size = total; ret = pEnumColorProfilesA( machine, &record, buffer, &size, &number ); - ok( !ret, "EnumColorProfilesA() succeeded (%d)\n", GetLastError() ); + ok( !ret, "EnumColorProfilesA succeeded\n" ); ret = pEnumColorProfilesA( NULL, NULL, buffer, &size, &number ); - ok( !ret, "EnumColorProfilesA() succeeded (%d)\n", GetLastError() ); + ok( !ret, "EnumColorProfilesA succeeded\n" ); ret = pEnumColorProfilesA( NULL, &record, buffer, NULL, &number ); - ok( !ret, "EnumColorProfilesA() succeeded (%d)\n", GetLastError() ); + ok( !ret, "EnumColorProfilesA succeeded\n" ); ret = pEnumColorProfilesA( NULL, &record, buffer, &size, &number ); todo_wine_if (!have_color_profile) - ok( ret, "EnumColorProfilesA() failed (%d)\n", GetLastError() ); + ok( ret, "EnumColorProfilesA failed %u\n", GetLastError() ); size = 0; - ret = pEnumColorProfilesA( NULL, &record, buffer, &size, &number ); - ok( !ret, "EnumColorProfilesA() succeeded (%d)\n", GetLastError() ); + ok( !ret, "EnumColorProfilesA succeeded\n" ); /* Functional checks */ size = total; ret = pEnumColorProfilesA( NULL, &record, buffer, &size, &number ); todo_wine_if (!have_color_profile) - ok( ret, "EnumColorProfilesA() failed (%d)\n", GetLastError() ); + ok( ret, "EnumColorProfilesA failed %u\n", GetLastError() ); HeapFree( GetProcessHeap(), 0, buffer ); } @@ -710,34 +711,36 @@ static void test_EnumColorProfilesW( WCHAR *standardprofileW ) record.dwDataColorSpace = SPACE_RGB; total = 0; + SetLastError( 0xdeadbeef ); ret = pEnumColorProfilesW( NULL, &record, NULL, &total, &number ); - ok( !ret, "EnumColorProfilesW() failed (%d)\n", GetLastError() ); + ok( !ret, "EnumColorProfilesW succeeded\n" ); + if (have_color_profile) ok( GetLastError() == ERROR_INSUFFICIENT_BUFFER, "got %u\n", GetLastError() ); buffer = HeapAlloc( GetProcessHeap(), 0, total * sizeof(WCHAR) ); size = total; ret = pEnumColorProfilesW( machineW, &record, buffer, &size, &number ); - ok( !ret, "EnumColorProfilesW() succeeded (%d)\n", GetLastError() ); + ok( !ret, "EnumColorProfilesW succeeded\n" ); ret = pEnumColorProfilesW( NULL, NULL, buffer, &size, &number ); - ok( !ret, "EnumColorProfilesW() succeeded (%d)\n", GetLastError() ); + ok( !ret, "EnumColorProfilesW succeeded\n" ); ret = pEnumColorProfilesW( NULL, &record, buffer, NULL, &number ); - ok( !ret, "EnumColorProfilesW() succeeded (%d)\n", GetLastError() ); + ok( !ret, "EnumColorProfilesW succeeded\n" ); ret = pEnumColorProfilesW( NULL, &record, buffer, &size, &number ); todo_wine_if (!have_color_profile) - ok( ret, "EnumColorProfilesW() failed (%d)\n", GetLastError() ); + ok( ret, "EnumColorProfilesW failed %u\n", GetLastError() ); size = 0; ret = pEnumColorProfilesW( NULL, &record, buffer, &size, &number ); - ok( !ret, "EnumColorProfilesW() succeeded (%d)\n", GetLastError() ); + ok( !ret, "EnumColorProfilesW succeeded\n" ); /* Functional checks */ size = total; ret = pEnumColorProfilesW( NULL, &record, buffer, &size, &number ); todo_wine_if (!have_color_profile) - ok( ret, "EnumColorProfilesW() failed (%d)\n", GetLastError() ); + ok( ret, "EnumColorProfilesW failed %u\n", GetLastError() ); HeapFree( GetProcessHeap(), 0, buffer ); }
5 years, 1 month
1
0
0
0
[reactos] 01/01: [MSCMS] Sync with Wine Staging 4.18. CORE-16441
by Amine Khaldi
https://git.reactos.org/?p=reactos.git;a=commitdiff;h=eb856c3564362c5f11247…
commit eb856c3564362c5f1124711a2a4f6ec3e17b227f Author: Amine Khaldi <amine.khaldi(a)reactos.org> AuthorDate: Sat Nov 9 21:58:56 2019 +0100 Commit: Amine Khaldi <amine.khaldi(a)reactos.org> CommitDate: Sat Nov 9 21:58:56 2019 +0100 [MSCMS] Sync with Wine Staging 4.18. CORE-16441 --- dll/win32/mscms/mscms.spec | 4 +-- dll/win32/mscms/profile.c | 83 +++++++++++++++++++++++++++++++++------------ dll/win32/mscms/transform.c | 1 + media/doc/README.WINE | 2 +- 4 files changed, 66 insertions(+), 24 deletions(-) diff --git a/dll/win32/mscms/mscms.spec b/dll/win32/mscms/mscms.spec index f521ac69698..fec0af571d7 100644 --- a/dll/win32/mscms/mscms.spec +++ b/dll/win32/mscms/mscms.spec @@ -96,8 +96,8 @@ @ stub WcsGetDefaultRenderingIntent @ stdcall WcsGetUsePerUserProfiles(wstr long ptr) @ stub WcsGpCanInstallOrUninstallProfiles -@ stub WcsOpenColorProfileA -@ stub WcsOpenColorProfileW +@ stdcall WcsOpenColorProfileA(ptr ptr ptr long long long long) +@ stdcall WcsOpenColorProfileW(ptr ptr ptr long long long long) @ stub WcsSetCalibrationManagementState @ stub WcsSetDefaultColorProfile @ stub WcsSetDefaultRenderingIntent diff --git a/dll/win32/mscms/profile.c b/dll/win32/mscms/profile.c index a0b9d4133d7..d45ac4af128 100644 --- a/dll/win32/mscms/profile.c +++ b/dll/win32/mscms/profile.c @@ -918,7 +918,11 @@ BOOL WINAPI EnumColorProfilesA( PCSTR machine, PENUMTYPEA record, PBYTE buffer, *p = 0; ret = TRUE; } - else ret = FALSE; + else + { + SetLastError( ERROR_INSUFFICIENT_BUFFER ); + ret = FALSE; + } *size = totalsize; if (number) *number = count; @@ -1044,7 +1048,11 @@ BOOL WINAPI EnumColorProfilesW( PCWSTR machine, PENUMTYPEW record, PBYTE buffer, *p = 0; ret = TRUE; } - else ret = FALSE; + else + { + SetLastError( ERROR_INSUFFICIENT_BUFFER ); + ret = FALSE; + } *size = totalsize; if (number) *number = count; @@ -1327,6 +1335,18 @@ BOOL WINAPI UninstallColorProfileW( PCWSTR machine, PCWSTR profile, BOOL delete return TRUE; } +static BOOL profile_AtoW( const PROFILE *in, PROFILE *out ) +{ + int len; + if (!in->pProfileData) return FALSE; + len = MultiByteToWideChar( CP_ACP, 0, in->pProfileData, -1, NULL, 0 ); + if (!(out->pProfileData = HeapAlloc( GetProcessHeap(), 0, len * sizeof(WCHAR) ))) return FALSE; + out->cbDataSize = len * sizeof(WCHAR); + MultiByteToWideChar( CP_ACP, 0, in->pProfileData, -1, out->pProfileData, len ); + out->dwType = in->dwType; + return TRUE; +} + /****************************************************************************** * OpenColorProfileA [MSCMS.@] * @@ -1335,6 +1355,7 @@ BOOL WINAPI UninstallColorProfileW( PCWSTR machine, PCWSTR profile, BOOL delete HPROFILE WINAPI OpenColorProfileA( PPROFILE profile, DWORD access, DWORD sharing, DWORD creation ) { HPROFILE handle = NULL; + PROFILE profileW; TRACE( "( %p, 0x%08x, 0x%08x, 0x%08x )\n", profile, access, sharing, creation ); @@ -1344,25 +1365,9 @@ HPROFILE WINAPI OpenColorProfileA( PPROFILE profile, DWORD access, DWORD sharing if (profile->dwType & PROFILE_MEMBUFFER) return OpenColorProfileW( profile, access, sharing, creation ); - if (profile->dwType & PROFILE_FILENAME) - { - UINT len; - PROFILE profileW; - - profileW.dwType = profile->dwType; - - len = MultiByteToWideChar( CP_ACP, 0, profile->pProfileData, -1, NULL, 0 ); - profileW.pProfileData = HeapAlloc( GetProcessHeap(), 0, len * sizeof(WCHAR) ); - - if (profileW.pProfileData) - { - profileW.cbDataSize = len * sizeof(WCHAR); - MultiByteToWideChar( CP_ACP, 0, profile->pProfileData, -1, profileW.pProfileData, len ); - - handle = OpenColorProfileW( &profileW, access, sharing, creation ); - HeapFree( GetProcessHeap(), 0, profileW.pProfileData ); - } - } + if (!profile_AtoW( profile, &profileW )) return FALSE; + handle = OpenColorProfileW( &profileW, access, sharing, creation ); + HeapFree( GetProcessHeap(), 0, profileW.pProfileData ); return handle; } @@ -1546,3 +1551,39 @@ BOOL WINAPI WcsEnumColorProfilesSize( WCS_PROFILE_MANAGEMENT_SCOPE scope, ENUMTY SetLastError( ERROR_CALL_NOT_IMPLEMENTED ); return FALSE; } + +/****************************************************************************** + * WcsOpenColorProfileA [MSCMS.@] + */ +HPROFILE WINAPI WcsOpenColorProfileA( PROFILE *cdm, PROFILE *camp, PROFILE *gmmp, DWORD access, DWORD sharing, + DWORD creation, DWORD flags ) +{ + PROFILE cdmW, campW = {0}, gmmpW = {0}; + HPROFILE ret = NULL; + + TRACE( "%p, %p, %p, %08x, %08x, %08x, %08x\n", cdm, camp, gmmp, access, sharing, creation, flags ); + + if (!cdm || !profile_AtoW( cdm, &cdmW )) return NULL; + if (camp && !profile_AtoW( camp, &campW )) goto done; + if (gmmp && !profile_AtoW( gmmp, &gmmpW )) goto done; + + ret = WcsOpenColorProfileW( &cdmW, &campW, &gmmpW, access, sharing, creation, flags ); + +done: + HeapFree( GetProcessHeap(), 0, cdmW.pProfileData ); + HeapFree( GetProcessHeap(), 0, campW.pProfileData ); + HeapFree( GetProcessHeap(), 0, gmmpW.pProfileData ); + return ret; +} + +/****************************************************************************** + * WcsOpenColorProfileW [MSCMS.@] + */ +HPROFILE WINAPI WcsOpenColorProfileW( PROFILE *cdm, PROFILE *camp, PROFILE *gmmp, DWORD access, DWORD sharing, + DWORD creation, DWORD flags ) +{ + TRACE( "%p, %p, %p, %08x, %08x, %08x, %08x\n", cdm, camp, gmmp, access, sharing, creation, flags ); + FIXME("no support for WCS profiles\n" ); + + return OpenColorProfileW( cdm, access, sharing, creation ); +} diff --git a/dll/win32/mscms/transform.c b/dll/win32/mscms/transform.c index cada3329ace..d4eb40b2c8a 100644 --- a/dll/win32/mscms/transform.c +++ b/dll/win32/mscms/transform.c @@ -48,6 +48,7 @@ static DWORD from_bmformat( BMFORMAT format ) case BM_GRAY: ret = TYPE_GRAY_8; break; case BM_xRGBQUADS: ret = TYPE_ARGB_8; break; case BM_xBGRQUADS: ret = TYPE_ABGR_8; break; + case BM_KYMCQUADS: ret = TYPE_KYMC_8; break; default: if (!quietfixme) { diff --git a/media/doc/README.WINE b/media/doc/README.WINE index cb3d4f5b742..3c7b0a15c26 100644 --- a/media/doc/README.WINE +++ b/media/doc/README.WINE @@ -105,7 +105,7 @@ dll/win32/msacm32 # Synced to WineStaging-4.18 dll/win32/msacm32.drv # Synced to WineStaging-3.3 dll/win32/msadp32.acm # Synced to WineStaging-4.0 dll/win32/mscat32 # Synced to WineStaging-4.18 -dll/win32/mscms # Synced to WineStaging-4.0 +dll/win32/mscms # Synced to WineStaging-4.18 dll/win32/mscoree # Synced to Wine-1.5.4 dll/win32/msctf # Synced to WineStaging-4.0 dll/win32/msftedit # Synced to WineStaging-3.3
5 years, 1 month
1
0
0
0
[reactos] 01/01: [PSDK] Update icm.h. CORE-16441
by Amine Khaldi
https://git.reactos.org/?p=reactos.git;a=commitdiff;h=bd98e58af4877c8d54816…
commit bd98e58af4877c8d5481604089e4bae14c02e8e0 Author: Amine Khaldi <amine.khaldi(a)reactos.org> AuthorDate: Sat Nov 9 21:58:15 2019 +0100 Commit: Amine Khaldi <amine.khaldi(a)reactos.org> CommitDate: Sat Nov 9 21:58:15 2019 +0100 [PSDK] Update icm.h. CORE-16441 --- sdk/include/psdk/icm.h | 2 ++ 1 file changed, 2 insertions(+) diff --git a/sdk/include/psdk/icm.h b/sdk/include/psdk/icm.h index fbbdede3ed2..de5bf2626e4 100644 --- a/sdk/include/psdk/icm.h +++ b/sdk/include/psdk/icm.h @@ -411,6 +411,8 @@ BOOL WINAPI UnregisterCMMW(PCWSTR,DWORD); #define UnregisterCMM WINELIB_NAME_AW(UnregisterCMM) BOOL WINAPI WcsEnumColorProfilesSize(WCS_PROFILE_MANAGEMENT_SCOPE,ENUMTYPEW*,DWORD*); BOOL WINAPI WcsGetUsePerUserProfiles(const WCHAR*,DWORD,BOOL*); +HPROFILE WINAPI WcsOpenColorProfileA(PROFILE*,PROFILE*,PROFILE*,DWORD,DWORD,DWORD,DWORD); +HPROFILE WINAPI WcsOpenColorProfileW(PROFILE*,PROFILE*,PROFILE*,DWORD,DWORD,DWORD,DWORD); #define PROFILE_FILENAME 1 #define PROFILE_MEMBUFFER 2
5 years, 1 month
1
0
0
0
[reactos] 01/01: [MSCAT32] Sync with Wine Staging 4.18. CORE-16441
by Amine Khaldi
https://git.reactos.org/?p=reactos.git;a=commitdiff;h=ddee95dfcdece35a8f048…
commit ddee95dfcdece35a8f0481a1ec546c1be5c9249c Author: Amine Khaldi <amine.khaldi(a)reactos.org> AuthorDate: Sat Nov 9 21:57:34 2019 +0100 Commit: Amine Khaldi <amine.khaldi(a)reactos.org> CommitDate: Sat Nov 9 21:57:34 2019 +0100 [MSCAT32] Sync with Wine Staging 4.18. CORE-16441 --- dll/win32/mscat32/main.c | 2 -- dll/win32/mscat32/mscat32.spec | 4 +++- media/doc/README.WINE | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/dll/win32/mscat32/main.c b/dll/win32/mscat32/main.c index d2b9d8bd67b..8408070282c 100644 --- a/dll/win32/mscat32/main.c +++ b/dll/win32/mscat32/main.c @@ -17,8 +17,6 @@ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA */ -#include "config.h" - #include <stdarg.h> #include "windef.h" #include "winbase.h" diff --git a/dll/win32/mscat32/mscat32.spec b/dll/win32/mscat32/mscat32.spec index 3c3c9d8d4c1..b0b1788c53d 100644 --- a/dll/win32/mscat32/mscat32.spec +++ b/dll/win32/mscat32/mscat32.spec @@ -1,4 +1,5 @@ -@ stub CryptCATVerifyMember +1 stub CryptCATVerifyMember +#@ stub CatalogCompactHashDatabase @ stdcall CryptCATAdminAcquireContext(long ptr long) wintrust.CryptCATAdminAcquireContext @ stdcall CryptCATAdminAddCatalog(long wstr wstr long) wintrust.CryptCATAdminAddCatalog @ stdcall CryptCATAdminCalcHashFromFileHandle(long ptr ptr long) wintrust.CryptCATAdminCalcHashFromFileHandle @@ -11,6 +12,7 @@ @ stdcall CryptCATCDFEnumCatAttributes(ptr ptr ptr) wintrust.CryptCATCDFEnumCatAttributes @ stub CryptCATCDFEnumMembers @ stdcall CryptCATCDFEnumMembersByCDFTag(ptr wstr ptr ptr long) wintrust.CryptCATCDFEnumMembersByCDFTag +@ stdcall CryptCATCDFEnumMembersByCDFTagEx(ptr wstr ptr ptr long ptr) wintrust.CryptCATCDFEnumMembersByCDFTagEx @ stdcall CryptCATCDFOpen(wstr ptr) wintrust.CryptCATCDFOpen @ stdcall CryptCATCatalogInfoFromContext(ptr ptr long) wintrust.CryptCATCatalogInfoFromContext @ stdcall CryptCATClose(long) wintrust.CryptCATClose diff --git a/media/doc/README.WINE b/media/doc/README.WINE index 6ef81693421..cb3d4f5b742 100644 --- a/media/doc/README.WINE +++ b/media/doc/README.WINE @@ -104,7 +104,7 @@ dll/win32/mprapi # Synced to WineStaging-3.3 dll/win32/msacm32 # Synced to WineStaging-4.18 dll/win32/msacm32.drv # Synced to WineStaging-3.3 dll/win32/msadp32.acm # Synced to WineStaging-4.0 -dll/win32/mscat32 # Synced to WineStaging-3.3 +dll/win32/mscat32 # Synced to WineStaging-4.18 dll/win32/mscms # Synced to WineStaging-4.0 dll/win32/mscoree # Synced to Wine-1.5.4 dll/win32/msctf # Synced to WineStaging-4.0
5 years, 1 month
1
0
0
0
← Newer
1
...
22
23
24
25
26
27
28
...
33
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
Results per page:
10
25
50
100
200