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
2025
April
March
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
List overview
Download
Ros-diffs
April 2022
----- 2025 -----
April 2025
March 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
ros-diffs@reactos.org
22 participants
157 discussions
Start a n
N
ew thread
[reactos] 01/01: [WINESYNC] Fail gracefully when unable to delete a file
by Mark Jansen
https://git.reactos.org/?p=reactos.git;a=commitdiff;h=fd00338b593a8183e4e60…
commit fd00338b593a8183e4e60baaa9e0a7b46c5eaff9 Author: Mark Jansen <mark.jansen(a)reactos.org> AuthorDate: Mon Mar 14 00:03:40 2022 +0100 Commit: Mark Jansen <mark.jansen(a)reactos.org> CommitDate: Sat Apr 9 01:26:30 2022 +0200 [WINESYNC] Fail gracefully when unable to delete a file --- sdk/tools/winesync/winesync.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/sdk/tools/winesync/winesync.py b/sdk/tools/winesync/winesync.py index 44fbf1e332f..8547ee97306 100644 --- a/sdk/tools/winesync/winesync.py +++ b/sdk/tools/winesync/winesync.py @@ -186,7 +186,10 @@ class wine_sync: warning_message += 'Error while applying patch to ' + new_reactos_path + '\n' if delta.status == pygit2.GIT_DELTA_DELETED: - self.reactos_index.remove(old_reactos_path) + try: + self.reactos_index.remove(old_reactos_path) + except IOError as err: + warning_message += 'Error while removing file ' + old_reactos_path + '\n' # here we check if the file exists. We don't complain, because applying the patch already failed anyway elif os.path.isfile(os.path.join(self.reactos_src, new_reactos_path)): self.reactos_index.add(new_reactos_path)
2 years, 12 months
1
0
0
0
[reactos] 01/01: [SYSSETUP] Add new Env section to unattend.inf
by Mark Jansen
https://git.reactos.org/?p=reactos.git;a=commitdiff;h=d4e38a630ff8e7ad6ec54…
commit d4e38a630ff8e7ad6ec5409a9b25be3ae596e9dd Author: Mark Jansen <mark.jansen(a)reactos.org> AuthorDate: Sat Mar 12 15:10:05 2022 +0100 Commit: Mark Jansen <mark.jansen(a)reactos.org> CommitDate: Sat Apr 9 01:25:06 2022 +0200 [SYSSETUP] Add new Env section to unattend.inf This allows to add environment variables during unattended setup --- boot/bootdata/bootcd/unattend.inf | 5 +++++ dll/win32/syssetup/wizard.c | 47 +++++++++++++++++++++++++++++++++++++++ 2 files changed, 52 insertions(+) diff --git a/boot/bootdata/bootcd/unattend.inf b/boot/bootdata/bootcd/unattend.inf index ce5593788e2..dcf98b732f4 100644 --- a/boot/bootdata/bootcd/unattend.inf +++ b/boot/bootdata/bootcd/unattend.inf @@ -74,3 +74,8 @@ ProductOption = 0 ; XResolution = 1440 ; YResolution = 900 ; VRefresh = 0 + +; enable this section to add environment variables +;[Env] +;WINETEST_PLATFORM=reactos + diff --git a/dll/win32/syssetup/wizard.c b/dll/win32/syssetup/wizard.c index 233b87aa184..75842349d3e 100644 --- a/dll/win32/syssetup/wizard.c +++ b/dll/win32/syssetup/wizard.c @@ -2831,6 +2831,53 @@ ProcessUnattendSection( } RegCloseKey(hKey); + + if (SetupFindFirstLineW(pSetupData->hSetupInf, + L"Env", + NULL, + &InfContext)) + { + if (RegCreateKeyExW( + HKEY_LOCAL_MACHINE, L"SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Environment", 0, NULL, + REG_OPTION_NON_VOLATILE, KEY_WRITE | KEY_READ, NULL, &hKey, NULL) != ERROR_SUCCESS) + { + DPRINT1("Error: failed to open HKLM\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Environment\n"); + return; + } + do + { + if (!SetupGetStringFieldW(&InfContext, + 0, + szName, + ARRAYSIZE(szName), + &LineLength)) + { + DPRINT1("Error: SetupGetStringField failed with %d\n", GetLastError()); + return; + } + + if (!SetupGetStringFieldW(&InfContext, + 1, + szValue, + ARRAYSIZE(szValue), + &LineLength)) + { + DPRINT1("Error: SetupGetStringField failed with %d\n", GetLastError()); + return; + } + DPRINT1("[ENV] %S=%S\n", szName, szValue); + + DWORD dwType = wcschr(szValue, '%') != NULL ? REG_EXPAND_SZ : REG_SZ; + + if (RegSetValueExW(hKey, szName, 0, dwType, (const BYTE*)szValue, (DWORD)(wcslen(szValue) + 1) * sizeof(TCHAR)) != ERROR_SUCCESS) + { + DPRINT1(" - Error %d\n", GetLastError()); + } + + } while (SetupFindNextLine(&InfContext, &InfContext)); + + RegCloseKey(hKey); + } } VOID
2 years, 12 months
1
0
0
0
[reactos] 02/02: [PSDK] Add more argument names
by Mark Jansen
https://git.reactos.org/?p=reactos.git;a=commitdiff;h=62d7486ef695532683acc…
commit 62d7486ef695532683acc6460f0d07d394942786 Author: Mark Jansen <mark.jansen(a)reactos.org> AuthorDate: Thu Mar 10 23:01:49 2022 +0100 Commit: Mark Jansen <mark.jansen(a)reactos.org> CommitDate: Sat Apr 9 01:22:11 2022 +0200 [PSDK] Add more argument names --- sdk/include/psdk/winbase.h | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/sdk/include/psdk/winbase.h b/sdk/include/psdk/winbase.h index 2bfe52eac7d..e54e9788303 100644 --- a/sdk/include/psdk/winbase.h +++ b/sdk/include/psdk/winbase.h @@ -2127,15 +2127,15 @@ DWORD WINAPI GetEnvironmentVariableA(LPCSTR,LPSTR,DWORD); DWORD WINAPI GetEnvironmentVariableW(LPCWSTR,LPWSTR,DWORD); BOOL WINAPI GetExitCodeProcess(HANDLE,PDWORD); BOOL WINAPI GetExitCodeThread(HANDLE,PDWORD); -DWORD WINAPI GetFileAttributesA(LPCSTR); +DWORD WINAPI GetFileAttributesA(LPCSTR lpFileName); #if (_WIN32_WINNT >= 0x0600) BOOL WINAPI GetFileAttributesByHandle(HANDLE,LPDWORD,DWORD); DWORD WINAPI GetFinalPathNameByHandleA(HANDLE,LPSTR,DWORD,DWORD); DWORD WINAPI GetFinalPathNameByHandleW(HANDLE,LPWSTR,DWORD,DWORD); #endif -DWORD WINAPI GetFileAttributesW(LPCWSTR); -BOOL WINAPI GetFileAttributesExA(LPCSTR,GET_FILEEX_INFO_LEVELS,PVOID); -BOOL WINAPI GetFileAttributesExW(LPCWSTR,GET_FILEEX_INFO_LEVELS,PVOID); +DWORD WINAPI GetFileAttributesW(LPCWSTR lpFileName); +BOOL WINAPI GetFileAttributesExA(LPCSTR lpFileName, GET_FILEEX_INFO_LEVELS fInfoLevelId, PVOID lpFileInformation); +BOOL WINAPI GetFileAttributesExW(LPCWSTR lpFileName, GET_FILEEX_INFO_LEVELS fInfoLevelId, PVOID lpFileInformation); #if (_WIN32_WINNT >= 0x0600) BOOL WINAPI GetFileBandwidthReservation(_In_ HANDLE, _Out_ LPDWORD, _Out_ LPDWORD, _Out_ LPBOOL, _Out_ LPDWORD, _Out_ LPDWORD); #endif @@ -3106,11 +3106,11 @@ UINT WINAPI SetErrorMode(UINT); BOOL WINAPI SetEvent(HANDLE); VOID WINAPI SetFileApisToANSI(void); VOID WINAPI SetFileApisToOEM(void); -BOOL WINAPI SetFileAttributesA(LPCSTR,DWORD); +BOOL WINAPI SetFileAttributesA(LPCSTR lpFileName, DWORD dwFileAttributes); #if (_WIN32_WINNT >= 0x0600) BOOL WINAPI SetFileAttributesByHandle(HANDLE,DWORD,DWORD); #endif -BOOL WINAPI SetFileAttributesW(LPCWSTR,DWORD); +BOOL WINAPI SetFileAttributesW(LPCWSTR lpFileName, DWORD dwFileAttributes); #if (_WIN32_WINNT >= 0x0600) BOOL WINAPI SetFileBandwidthReservation(_In_ HANDLE, _In_ DWORD, _In_ DWORD, _In_ BOOL, _Out_ LPDWORD, _Out_ LPDWORD); BOOL WINAPI SetFileCompletionNotificationModes(_In_ HANDLE, _In_ UCHAR);
2 years, 12 months
1
0
0
0
[reactos] 01/02: [SHELL32] Copy without FILE_ATTRIBUTE_READONLY from a CDROM
by Mark Jansen
https://git.reactos.org/?p=reactos.git;a=commitdiff;h=513d0a6d2d4652671c9b7…
commit 513d0a6d2d4652671c9b7c92c495edce6d9491a4 Author: Mark Jansen <mark.jansen(a)reactos.org> AuthorDate: Thu Mar 10 23:00:32 2022 +0100 Commit: Mark Jansen <mark.jansen(a)reactos.org> CommitDate: Sat Apr 9 01:21:57 2022 +0200 [SHELL32] Copy without FILE_ATTRIBUTE_READONLY from a CDROM CORE-18089 --- dll/win32/shell32/shlfileop.cpp | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/dll/win32/shell32/shlfileop.cpp b/dll/win32/shell32/shlfileop.cpp index fbd06a767b8..351ee1e4c5c 100644 --- a/dll/win32/shell32/shlfileop.cpp +++ b/dll/win32/shell32/shlfileop.cpp @@ -755,6 +755,21 @@ static DWORD SHNotifyMoveFileW(FILE_OPERATION *op, LPCWSTR src, LPCWSTR dest, BO #endif } +static BOOL SHIsCdRom(LPCWSTR path) +{ + WCHAR tmp[] = { L"A:\\" }; + + if (!path || !path[0]) + return FALSE; + + if (path[1] != UNICODE_NULL && path[1] != ':') + return FALSE; + + tmp[0] = path[0]; + + return GetDriveTypeW(tmp) == DRIVE_CDROM; +} + /************************************************************************ * SHNotifyCopyFile [internal] * @@ -795,6 +810,14 @@ static DWORD SHNotifyCopyFileW(FILE_OPERATION *op, LPCWSTR src, LPCWSTR dest, BO ret = CopyFileExW(src, dest, SHCopyProgressRoutine, op, &op->bCancelled, bFailIfExists); if (ret) { + // We are copying from a CD-ROM volume, which is readonly + if (SHIsCdRom(src)) + { + attribs = GetFileAttributesW(dest); + attribs &= ~FILE_ATTRIBUTE_READONLY; + SetFileAttributesW(dest, attribs); + } + SHChangeNotify(SHCNE_CREATE, SHCNF_PATHW, dest, NULL); return ERROR_SUCCESS; }
2 years, 12 months
1
0
0
0
[reactos] 01/01: [MSVCRT_WINETEST] Mute _CRT_NON_CONFORMING_SWPRINTFS
by Mark Jansen
https://git.reactos.org/?p=reactos.git;a=commitdiff;h=5606fb159ee80b7c24611…
commit 5606fb159ee80b7c246111c005df878485fbff8c Author: Mark Jansen <mark.jansen(a)reactos.org> AuthorDate: Fri Apr 8 00:30:36 2022 +0200 Commit: Mark Jansen <mark.jansen(a)reactos.org> CommitDate: Fri Apr 8 22:40:26 2022 +0200 [MSVCRT_WINETEST] Mute _CRT_NON_CONFORMING_SWPRINTFS --- modules/rostests/winetests/msvcrt/precomp.h | 2 ++ 1 file changed, 2 insertions(+) diff --git a/modules/rostests/winetests/msvcrt/precomp.h b/modules/rostests/winetests/msvcrt/precomp.h index 63a519d703c..8020f395b95 100644 --- a/modules/rostests/winetests/msvcrt/precomp.h +++ b/modules/rostests/winetests/msvcrt/precomp.h @@ -6,7 +6,9 @@ #define _INC_WINDOWS #define COM_NO_WINDOWS_H +#if !defined(_CRT_NON_CONFORMING_SWPRINTFS) #define _CRT_NON_CONFORMING_SWPRINTFS +#endif #include <wine/test.h>
2 years, 12 months
1
0
0
0
[reactos] 01/01: [DISKPART] Update Polish (pl-PL) translation (#4413)
by Piotr Hetnarowicz
https://git.reactos.org/?p=reactos.git;a=commitdiff;h=0b8891a7d300e164cdfff…
commit 0b8891a7d300e164cdfff7e17e90f52885cc549d Author: Piotr Hetnarowicz <40692062+pithwz(a)users.noreply.github.com> AuthorDate: Fri Apr 8 18:14:51 2022 +0200 Commit: GitHub <noreply(a)github.com> CommitDate: Fri Apr 8 19:14:51 2022 +0300 [DISKPART] Update Polish (pl-PL) translation (#4413) Addendum to 2ba6b097, 38b38bbf, and fd8dd586. --- base/system/diskpart/lang/pl-PL.rc | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/base/system/diskpart/lang/pl-PL.rc b/base/system/diskpart/lang/pl-PL.rc index 356e091cace..eadb120b3f6 100644 --- a/base/system/diskpart/lang/pl-PL.rc +++ b/base/system/diskpart/lang/pl-PL.rc @@ -32,11 +32,11 @@ BEGIN IDS_DETAIL_INFO_HIBER_FILE_DSK "Dysk pliku hibernacji" IDS_DETAIL_INFO_CRASH_DSK "Dysk zrzutu awarii systemu" IDS_DETAIL_INFO_CLST_DSK "Dysk klastrowany" - IDS_DETAIL_PARTITION_NUMBER "Partition %lu\n" - IDS_DETAIL_PARTITION_TYPE "Typ : %02x\n" - IDS_DETAIL_PARTITION_HIDDEN "Hidden : %s\n" - IDS_DETAIL_PARTITION_ACTIVE "Active : %s\n" - IDS_DETAIL_PARTITION_OFFSET "Offset in Byte: %I64u\n" + IDS_DETAIL_PARTITION_NUMBER "Partycja %lu\n" + IDS_DETAIL_PARTITION_TYPE "Typ : %02x\n" + IDS_DETAIL_PARTITION_HIDDEN "Ukryta : %s\n" + IDS_DETAIL_PARTITION_ACTIVE "Aktywna : %s\n" + IDS_DETAIL_PARTITION_OFFSET "Przesunięcie w bajtach: %I64u\n" END /* Detail header titles */ @@ -49,9 +49,9 @@ BEGIN IDS_LIST_PARTITION_LINE " ------------- ---------------- ------- ------------\n" IDS_LIST_PARTITION_FORMAT "%c Partycja %2lu %-16s %4I64u %-2s %4I64u %-2s\n" IDS_LIST_PARTITION_NO_DISK "\nNie wybrano dysku do wyświetlenia partycji.\nWybierz dysk i spróbuj ponownie.\n\n" - IDS_LIST_VOLUME_HEAD " Volume ### Ltr Label FS Type Size Status Info\n" - IDS_LIST_VOLUME_LINE " ---------- --- ----------- ----- ---------- ------- ------- --------\n" - IDS_LIST_VOLUME_FORMAT " Volume %3lu %c %-11s %-5s %10u %4I64u %-2s\n" + IDS_LIST_VOLUME_HEAD " Wolumin ### Lit Etykieta FS Typ Rozmiar Stan Info\n" + IDS_LIST_VOLUME_LINE " ----------- --- ----------- ----- ---------- ------- ------- --------\n" + IDS_LIST_VOLUME_FORMAT " Wolumin %3lu %c %-11s %-5s %10u %4I64u %-2s\n" END /* RESCAN command string */ @@ -73,7 +73,7 @@ BEGIN IDS_SELECT_PARTITION_INVALID "\nNieprawidłowa partycja.\n\n" IDS_SELECT_NO_VOLUME "\nNie wybrano woluminu.\nWybierz dysk i spróbuj ponownie.\n\n" IDS_SELECT_VOLUME "\nObecnie wybranym woluminem jest wolumin %lu.\n\n" - IDS_SELECT_VOLUME_INVALID "\nInvalid volume.\n\n" + IDS_SELECT_VOLUME_INVALID "\nNieprawidłowy wolumin.\n\n" END /* Disk Status */
2 years, 12 months
1
0
0
0
[reactos] 01/01: [IMM32] Fix & Rename: s/Imm32LockIMCEx/Imm32InternalLockIMC/ (#4436)
by Katayama Hirofumi MZ
https://git.reactos.org/?p=reactos.git;a=commitdiff;h=8de743988708e7835d869…
commit 8de743988708e7835d869bb412e7332bf9467e6e Author: Katayama Hirofumi MZ <katayama.hirofumi.mz(a)gmail.com> AuthorDate: Fri Apr 8 22:23:30 2022 +0900 Commit: GitHub <noreply(a)github.com> CommitDate: Fri Apr 8 22:23:30 2022 +0900 [IMM32] Fix & Rename: s/Imm32LockIMCEx/Imm32InternalLockIMC/ (#4436) - Fix & Rename: s/Imm32InitContext/Imm32CreateInputContext/ (Win: IMM32!CreateInputContext). - Fix & Rename: s/Imm32LockIMCEx/Imm32InternalLockIMC/ (Win: IMM32!InternalImmLockIMC). - Add CtfImmTIMCreateInputContext stub. CORE-11700 --- dll/win32/imm32/ctf.c | 7 +++ dll/win32/imm32/imm.c | 97 +++++++++++++++++---------------------- dll/win32/imm32/precomp.h | 2 +- sdk/include/reactos/imm32_undoc.h | 2 + 4 files changed, 51 insertions(+), 57 deletions(-) diff --git a/dll/win32/imm32/ctf.c b/dll/win32/imm32/ctf.c index e7f9cc77cad..b894c4498e3 100644 --- a/dll/win32/imm32/ctf.c +++ b/dll/win32/imm32/ctf.c @@ -38,6 +38,13 @@ HRESULT APIENTRY CtfImmTIMDestroyInputContext(HIMC hIMC) return Imm32CtfImeDestroyInputContext(hIMC); } +// Win: CtfImmTIMCreateInputContext +HRESULT APIENTRY CtfImmTIMCreateInputContext(HIMC hIMC) +{ + FIXME("(%p)\n", hIMC); + return E_NOTIMPL; +} + /*********************************************************************** * CtfImmIsCiceroEnabled (IMM32.@) */ diff --git a/dll/win32/imm32/imm.c b/dll/win32/imm32/imm.c index 9eb0b0b54fd..2260a50e74e 100644 --- a/dll/win32/imm32/imm.c +++ b/dll/win32/imm32/imm.c @@ -242,7 +242,7 @@ VOID APIENTRY Imm32SelectLayout(HKL hNewKL, HKL hOldKL, HIMC hIMC) } } - pIC = (LPINPUTCONTEXTDX)Imm32LockIMCEx(hIMC, FALSE); + pIC = (LPINPUTCONTEXTDX)Imm32InternalLockIMC(hIMC, FALSE); if (!pIC) { if (pNewImeDpi) @@ -713,15 +713,16 @@ Finish: return NtUserDestroyInputContext(hIMC); } +// NOTE: Windows does recursive call ImmLockIMC here but we don't do so. +// Win: BOOL CreateInputContext(HIMC hIMC, HKL hKL, BOOL fSelect) BOOL APIENTRY -Imm32InitContext(HIMC hIMC, LPINPUTCONTEXT pIC, PCLIENTIMC pClientImc, HKL hKL, BOOL fSelect) +Imm32CreateInputContext(HIMC hIMC, LPINPUTCONTEXT pIC, PCLIENTIMC pClientImc, HKL hKL, BOOL fSelect) { DWORD dwIndex, cbPrivate; PIMEDPI pImeDpi = NULL; LPCOMPOSITIONSTRING pCS; LPCANDIDATEINFO pCI; LPGUIDELINE pGL; - /* NOTE: Windows does recursive call ImmLockIMC here but we don't do so. */ /* Create IC components */ pIC->hCompStr = ImmCreateIMCC(sizeof(COMPOSITIONSTRING)); @@ -809,16 +810,15 @@ Fail: } // Win: InternalImmLockIMC -LPINPUTCONTEXT APIENTRY Imm32LockIMCEx(HIMC hIMC, BOOL fSelect) +LPINPUTCONTEXT APIENTRY Imm32InternalLockIMC(HIMC hIMC, BOOL fSelect) { HANDLE hIC; LPINPUTCONTEXT pIC = NULL; PCLIENTIMC pClientImc; - WORD Word; + WORD LangID; DWORD dwThreadId; - HKL hKL, hNewKL; + HKL hOldKL, hNewKL; PIMEDPI pImeDpi = NULL; - BOOL bInited; pClientImc = ImmLockClientImc(hIMC); if (!pClientImc) @@ -826,68 +826,53 @@ LPINPUTCONTEXT APIENTRY Imm32LockIMCEx(HIMC hIMC, BOOL fSelect) RtlEnterCriticalSection(&pClientImc->cs); - if (!pClientImc->hInputContext) - { - dwThreadId = (DWORD)NtUserQueryInputContext(hIMC, QIC_INPUTTHREADID); - - if (dwThreadId == GetCurrentThreadId() && Imm32IsCiceroMode() && !Imm32Is16BitMode()) - { - hKL = GetKeyboardLayout(0); - Word = LOWORD(hKL); - hNewKL = (HKL)(DWORD_PTR)MAKELONG(Word, Word); - - pImeDpi = Imm32FindOrLoadImeDpi(hNewKL); - if (pImeDpi) - { - FIXME("We have to do something here\n"); - } - } - - if (!NtUserQueryInputContext(hIMC, QIC_DEFAULTWINDOWIME)) - { - RtlLeaveCriticalSection(&pClientImc->cs); - goto Quit; - } + if (pClientImc->hInputContext) + goto Finish; - hIC = LocalAlloc(LHND, sizeof(INPUTCONTEXTDX)); - if (!hIC) - { - RtlLeaveCriticalSection(&pClientImc->cs); - goto Quit; - } - pClientImc->hInputContext = hIC; + dwThreadId = (DWORD)NtUserQueryInputContext(hIMC, QIC_INPUTTHREADID); + if (dwThreadId == GetCurrentThreadId() && Imm32IsCiceroMode() && !Imm32Is16BitMode()) + { + hOldKL = GetKeyboardLayout(0); + LangID = LOWORD(hOldKL); + hNewKL = (HKL)(DWORD_PTR)MAKELONG(LangID, LangID); - pIC = LocalLock(pClientImc->hInputContext); - if (!pIC) + pImeDpi = Imm32FindOrLoadImeDpi(hNewKL); + if (pImeDpi) { - pClientImc->hInputContext = LocalFree(pClientImc->hInputContext); - RtlLeaveCriticalSection(&pClientImc->cs); - goto Quit; + CtfImmTIMActivate(hNewKL); } + } - hKL = GetKeyboardLayout(dwThreadId); - // bInited = Imm32InitContext(hIMC, hKL, fSelect); - bInited = Imm32InitContext(hIMC, pIC, pClientImc, hKL, fSelect); - LocalUnlock(pClientImc->hInputContext); + if (!NtUserQueryInputContext(hIMC, QIC_DEFAULTWINDOWIME)) + goto Quit; - if (!bInited) - { - pIC = NULL; - pClientImc->hInputContext = LocalFree(pClientImc->hInputContext); - RtlLeaveCriticalSection(&pClientImc->cs); - goto Quit; - } + hIC = LocalAlloc(LHND, sizeof(INPUTCONTEXTDX)); + pIC = LocalLock(hIC); + if (!pIC) + { + LocalFree(hIC); + goto Quit; } + pClientImc->hInputContext = hIC; - FIXME("We have to do something here\n"); + hNewKL = GetKeyboardLayout(dwThreadId); + if (!Imm32CreateInputContext(hIMC, pIC, pClientImc, hNewKL, fSelect)) + { + pClientImc->hInputContext = LocalFree(pClientImc->hInputContext); + goto Quit; + } +Finish: + CtfImmTIMCreateInputContext(hIMC); RtlLeaveCriticalSection(&pClientImc->cs); - pIC = LocalLock(pClientImc->hInputContext); InterlockedIncrement(&pClientImc->cLockObj); + ImmUnlockClientImc(pClientImc); + return pIC; Quit: + RtlLeaveCriticalSection(&pClientImc->cs); ImmUnlockClientImc(pClientImc); - return pIC; + return NULL; } /*********************************************************************** @@ -1030,7 +1015,7 @@ HIMC WINAPI ImmGetContext(HWND hWnd) LPINPUTCONTEXT WINAPI ImmLockIMC(HIMC hIMC) { TRACE("(%p)\n", hIMC); - return Imm32LockIMCEx(hIMC, TRUE); + return Imm32InternalLockIMC(hIMC, TRUE); } /*********************************************************************** diff --git a/dll/win32/imm32/precomp.h b/dll/win32/imm32/precomp.h index 9139c3d0ce1..d6310c7e536 100644 --- a/dll/win32/imm32/precomp.h +++ b/dll/win32/imm32/precomp.h @@ -92,7 +92,7 @@ LPSTR APIENTRY Imm32AnsiFromWide(LPCWSTR pszW); LONG APIENTRY IchWideFromAnsi(LONG cchAnsi, LPCSTR pchAnsi, UINT uCodePage); LONG APIENTRY IchAnsiFromWide(LONG cchWide, LPCWSTR pchWide, UINT uCodePage); PIMEDPI APIENTRY Imm32FindOrLoadImeDpi(HKL hKL); -LPINPUTCONTEXT APIENTRY Imm32LockIMCEx(HIMC hIMC, BOOL fSelect); +LPINPUTCONTEXT APIENTRY Imm32InternalLockIMC(HIMC hIMC, BOOL fSelect); BOOL APIENTRY Imm32ReleaseIME(HKL hKL); BOOL APIENTRY Imm32IsSystemJapaneseOrKorean(VOID); diff --git a/sdk/include/reactos/imm32_undoc.h b/sdk/include/reactos/imm32_undoc.h index f90b684a877..dadff68b031 100644 --- a/sdk/include/reactos/imm32_undoc.h +++ b/sdk/include/reactos/imm32_undoc.h @@ -18,7 +18,9 @@ PCLIENTIMC WINAPI ImmLockClientImc(HIMC hImc); VOID WINAPI ImmUnlockClientImc(PCLIENTIMC pClientImc); PIMEDPI WINAPI ImmLockImeDpi(HKL hKL); VOID WINAPI ImmUnlockImeDpi(PIMEDPI pImeDpi); +HRESULT APIENTRY CtfImmTIMCreateInputContext(HIMC hIMC); HRESULT APIENTRY CtfImmTIMDestroyInputContext(HIMC hIMC); +HRESULT WINAPI CtfImmTIMActivate(HKL hKL); #ifdef __cplusplus } // extern "C"
2 years, 12 months
1
0
0
0
[reactos] 01/01: [IMM32] Renaming: s/Imm32FreeImeDpi/Imm32UnloadIME/ (#4435)
by Katayama Hirofumi MZ
https://git.reactos.org/?p=reactos.git;a=commitdiff;h=c3fac567cac6ebc694728…
commit c3fac567cac6ebc6947287679aceaeb57a05340f Author: Katayama Hirofumi MZ <katayama.hirofumi.mz(a)gmail.com> AuthorDate: Fri Apr 8 19:50:41 2022 +0900 Commit: GitHub <noreply(a)github.com> CommitDate: Fri Apr 8 19:50:41 2022 +0900 [IMM32] Renaming: s/Imm32FreeImeDpi/Imm32UnloadIME/ (#4435) Improve debuggability. CORE-11700 --- dll/win32/imm32/ime.c | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/dll/win32/imm32/ime.c b/dll/win32/imm32/ime.c index 82ca39adbb4..327dc2f49fb 100644 --- a/dll/win32/imm32/ime.c +++ b/dll/win32/imm32/ime.c @@ -31,7 +31,8 @@ PIMEDPI APIENTRY Imm32FindImeDpi(HKL hKL) return pImeDpi; } -VOID APIENTRY Imm32FreeImeDpi(PIMEDPI pImeDpi, BOOL bDestroy) +// Win: UnloadIME +VOID APIENTRY Imm32UnloadIME(PIMEDPI pImeDpi, BOOL bDestroy) { if (pImeDpi->hInst == NULL) return; @@ -257,7 +258,7 @@ PIMEDPI APIENTRY Ime32LoadImeDpi(HKL hKL, BOOL bLock) RtlLeaveCriticalSection(&gcsImeDpi); - Imm32FreeImeDpi(pImeDpiNew, FALSE); + Imm32UnloadIME(pImeDpiNew, FALSE); ImmLocalFree(pImeDpiNew); return pImeDpiFound; } @@ -342,7 +343,7 @@ BOOL APIENTRY Imm32ReleaseIME(HKL hKL) } } - Imm32FreeImeDpi(pImeDpi0, TRUE); + Imm32UnloadIME(pImeDpi0, TRUE); ImmLocalFree(pImeDpi0); Quit: @@ -788,7 +789,7 @@ VOID WINAPI ImmUnlockImeDpi(PIMEDPI pImeDpi) } } - Imm32FreeImeDpi(pImeDpi, TRUE); + Imm32UnloadIME(pImeDpi, TRUE); ImmLocalFree(pImeDpi); RtlLeaveCriticalSection(&gcsImeDpi);
2 years, 12 months
1
0
0
0
[reactos] 01/01: [IMM32] Renaming: s/g_pImeDpiList/gpImeDpiList/ (#4434)
by Katayama Hirofumi MZ
https://git.reactos.org/?p=reactos.git;a=commitdiff;h=3c1697146fe8bfc799640…
commit 3c1697146fe8bfc799640c3ce0d7f06fb9bb6353 Author: Katayama Hirofumi MZ <katayama.hirofumi.mz(a)gmail.com> AuthorDate: Fri Apr 8 19:02:08 2022 +0900 Commit: GitHub <noreply(a)github.com> CommitDate: Fri Apr 8 19:02:08 2022 +0900 [IMM32] Renaming: s/g_pImeDpiList/gpImeDpiList/ (#4434) Improve debuggability. CORE-11700 --- dll/win32/imm32/ime.c | 22 +++++++++++----------- dll/win32/imm32/imm.c | 2 +- dll/win32/imm32/precomp.h | 2 +- 3 files changed, 13 insertions(+), 13 deletions(-) diff --git a/dll/win32/imm32/ime.c b/dll/win32/imm32/ime.c index 9afaa66b8d1..82ca39adbb4 100644 --- a/dll/win32/imm32/ime.c +++ b/dll/win32/imm32/ime.c @@ -14,14 +14,14 @@ WINE_DEFAULT_DEBUG_CHANNEL(imm); RTL_CRITICAL_SECTION gcsImeDpi; // Win: gcsImeDpi -PIMEDPI g_pImeDpiList = NULL; +PIMEDPI gpImeDpiList = NULL; // Win: gpImeDpi PIMEDPI APIENTRY Imm32FindImeDpi(HKL hKL) { PIMEDPI pImeDpi; RtlEnterCriticalSection(&gcsImeDpi); - for (pImeDpi = g_pImeDpiList; pImeDpi != NULL; pImeDpi = pImeDpi->pNext) + for (pImeDpi = gpImeDpiList; pImeDpi != NULL; pImeDpi = pImeDpi->pNext) { if (pImeDpi->hKL == hKL) break; @@ -269,8 +269,8 @@ PIMEDPI APIENTRY Ime32LoadImeDpi(HKL hKL, BOOL bLock) pImeDpiNew->cLockObj = 1; } - pImeDpiNew->pNext = g_pImeDpiList; - g_pImeDpiList = pImeDpiNew; + pImeDpiNew->pNext = gpImeDpiList; + gpImeDpiList = pImeDpiNew; RtlLeaveCriticalSection(&gcsImeDpi); return pImeDpiNew; @@ -310,7 +310,7 @@ BOOL APIENTRY Imm32ReleaseIME(HKL hKL) RtlEnterCriticalSection(&gcsImeDpi); - for (pImeDpi0 = g_pImeDpiList; pImeDpi0; pImeDpi0 = pImeDpi0->pNext) + for (pImeDpi0 = gpImeDpiList; pImeDpi0; pImeDpi0 = pImeDpi0->pNext) { if (pImeDpi0->hKL == hKL) break; @@ -326,13 +326,13 @@ BOOL APIENTRY Imm32ReleaseIME(HKL hKL) goto Quit; } - if (g_pImeDpiList == pImeDpi0) + if (gpImeDpiList == pImeDpi0) { - g_pImeDpiList = pImeDpi0->pNext; + gpImeDpiList = pImeDpi0->pNext; } - else if (g_pImeDpiList) + else if (gpImeDpiList) { - for (pImeDpi1 = g_pImeDpiList; pImeDpi1; pImeDpi1 = pImeDpi1->pNext) + for (pImeDpi1 = gpImeDpiList; pImeDpi1; pImeDpi1 = pImeDpi1->pNext) { if (pImeDpi1->pNext == pImeDpi0) { @@ -729,7 +729,7 @@ PIMEDPI WINAPI ImmLockImeDpi(HKL hKL) RtlEnterCriticalSection(&gcsImeDpi); /* Find by hKL */ - for (pImeDpi = g_pImeDpiList; pImeDpi; pImeDpi = pImeDpi->pNext) + for (pImeDpi = gpImeDpiList; pImeDpi; pImeDpi = pImeDpi->pNext) { if (pImeDpi->hKL == hKL) /* found */ { @@ -779,7 +779,7 @@ VOID WINAPI ImmUnlockImeDpi(PIMEDPI pImeDpi) } /* Remove from list */ - for (ppEntry = &g_pImeDpiList; *ppEntry; ppEntry = &((*ppEntry)->pNext)) + for (ppEntry = &gpImeDpiList; *ppEntry; ppEntry = &((*ppEntry)->pNext)) { if (*ppEntry == pImeDpi) /* found */ { diff --git a/dll/win32/imm32/imm.c b/dll/win32/imm32/imm.c index c5544580dda..9eb0b0b54fd 100644 --- a/dll/win32/imm32/imm.c +++ b/dll/win32/imm32/imm.c @@ -161,7 +161,7 @@ BOOL WINAPI ImmFreeLayout(DWORD dwUnknown) { RtlEnterCriticalSection(&gcsImeDpi); Retry: - for (pImeDpi = g_pImeDpiList; pImeDpi; pImeDpi = pImeDpi->pNext) + for (pImeDpi = gpImeDpiList; pImeDpi; pImeDpi = pImeDpi->pNext) { if (Imm32ReleaseIME(pImeDpi->hKL)) goto Retry; diff --git a/dll/win32/imm32/precomp.h b/dll/win32/imm32/precomp.h index 4ddcd216e53..9139c3d0ce1 100644 --- a/dll/win32/imm32/precomp.h +++ b/dll/win32/imm32/precomp.h @@ -71,7 +71,7 @@ typedef struct REG_IME extern HMODULE g_hImm32Inst; extern RTL_CRITICAL_SECTION gcsImeDpi; -extern PIMEDPI g_pImeDpiList; +extern PIMEDPI gpImeDpiList; extern PSERVERINFO gpsi; extern SHAREDINFO gSharedInfo; extern BYTE g_bClientRegd;
2 years, 12 months
1
0
0
0
[reactos] 01/01: [IMM32] Renaming: s/g_csImeDpi/gcsImeDpi/ (#4433)
by Katayama Hirofumi MZ
https://git.reactos.org/?p=reactos.git;a=commitdiff;h=895909e695f70527f0493…
commit 895909e695f70527f0493552bc8c1b2a94ef6e70 Author: Katayama Hirofumi MZ <katayama.hirofumi.mz(a)gmail.com> AuthorDate: Fri Apr 8 18:21:54 2022 +0900 Commit: GitHub <noreply(a)github.com> CommitDate: Fri Apr 8 18:21:54 2022 +0900 [IMM32] Renaming: s/g_csImeDpi/gcsImeDpi/ (#4433) Improve debuggability. CORE-11700 --- dll/win32/imm32/ime.c | 30 +++++++++++++++--------------- dll/win32/imm32/imm.c | 8 ++++---- dll/win32/imm32/precomp.h | 2 +- 3 files changed, 20 insertions(+), 20 deletions(-) diff --git a/dll/win32/imm32/ime.c b/dll/win32/imm32/ime.c index 61113b6d83f..9afaa66b8d1 100644 --- a/dll/win32/imm32/ime.c +++ b/dll/win32/imm32/ime.c @@ -6,27 +6,27 @@ * Copyright 2002, 2003, 2007 CodeWeavers, Aric Stewart * Copyright 2017 James Tabor <james.tabor(a)reactos.org> * Copyright 2018 Amine Khaldi <amine.khaldi(a)reactos.org> - * Copyright 2020-2021 Katayama Hirofumi MZ <katayama.hirofumi.mz(a)gmail.com> + * Copyright 2020-2022 Katayama Hirofumi MZ <katayama.hirofumi.mz(a)gmail.com> */ #include "precomp.h" WINE_DEFAULT_DEBUG_CHANNEL(imm); -RTL_CRITICAL_SECTION g_csImeDpi; +RTL_CRITICAL_SECTION gcsImeDpi; // Win: gcsImeDpi PIMEDPI g_pImeDpiList = NULL; PIMEDPI APIENTRY Imm32FindImeDpi(HKL hKL) { PIMEDPI pImeDpi; - RtlEnterCriticalSection(&g_csImeDpi); + RtlEnterCriticalSection(&gcsImeDpi); for (pImeDpi = g_pImeDpiList; pImeDpi != NULL; pImeDpi = pImeDpi->pNext) { if (pImeDpi->hKL == hKL) break; } - RtlLeaveCriticalSection(&g_csImeDpi); + RtlLeaveCriticalSection(&gcsImeDpi); return pImeDpi; } @@ -247,7 +247,7 @@ PIMEDPI APIENTRY Ime32LoadImeDpi(HKL hKL, BOOL bLock) return FALSE; } - RtlEnterCriticalSection(&g_csImeDpi); + RtlEnterCriticalSection(&gcsImeDpi); pImeDpiFound = Imm32FindImeDpi(hKL); if (pImeDpiFound) @@ -255,7 +255,7 @@ PIMEDPI APIENTRY Ime32LoadImeDpi(HKL hKL, BOOL bLock) if (!bLock) pImeDpiFound->dwFlags &= ~IMEDPI_FLAG_LOCKED; - RtlLeaveCriticalSection(&g_csImeDpi); + RtlLeaveCriticalSection(&gcsImeDpi); Imm32FreeImeDpi(pImeDpiNew, FALSE); ImmLocalFree(pImeDpiNew); @@ -272,7 +272,7 @@ PIMEDPI APIENTRY Ime32LoadImeDpi(HKL hKL, BOOL bLock) pImeDpiNew->pNext = g_pImeDpiList; g_pImeDpiList = pImeDpiNew; - RtlLeaveCriticalSection(&g_csImeDpi); + RtlLeaveCriticalSection(&gcsImeDpi); return pImeDpiNew; } } @@ -308,7 +308,7 @@ BOOL APIENTRY Imm32ReleaseIME(HKL hKL) BOOL ret = TRUE; PIMEDPI pImeDpi0, pImeDpi1; - RtlEnterCriticalSection(&g_csImeDpi); + RtlEnterCriticalSection(&gcsImeDpi); for (pImeDpi0 = g_pImeDpiList; pImeDpi0; pImeDpi0 = pImeDpi0->pNext) { @@ -346,7 +346,7 @@ BOOL APIENTRY Imm32ReleaseIME(HKL hKL) ImmLocalFree(pImeDpi0); Quit: - RtlLeaveCriticalSection(&g_csImeDpi); + RtlLeaveCriticalSection(&gcsImeDpi); return ret; } @@ -726,7 +726,7 @@ PIMEDPI WINAPI ImmLockImeDpi(HKL hKL) TRACE("(%p)\n", hKL); - RtlEnterCriticalSection(&g_csImeDpi); + RtlEnterCriticalSection(&gcsImeDpi); /* Find by hKL */ for (pImeDpi = g_pImeDpiList; pImeDpi; pImeDpi = pImeDpi->pNext) @@ -742,7 +742,7 @@ PIMEDPI WINAPI ImmLockImeDpi(HKL hKL) } } - RtlLeaveCriticalSection(&g_csImeDpi); + RtlLeaveCriticalSection(&gcsImeDpi); return pImeDpi; } @@ -758,13 +758,13 @@ VOID WINAPI ImmUnlockImeDpi(PIMEDPI pImeDpi) if (pImeDpi == NULL) return; - RtlEnterCriticalSection(&g_csImeDpi); + RtlEnterCriticalSection(&gcsImeDpi); /* unlock */ --(pImeDpi->cLockObj); if (pImeDpi->cLockObj != 0) { - RtlLeaveCriticalSection(&g_csImeDpi); + RtlLeaveCriticalSection(&gcsImeDpi); return; } @@ -773,7 +773,7 @@ VOID WINAPI ImmUnlockImeDpi(PIMEDPI pImeDpi) if ((pImeDpi->dwFlags & IMEDPI_FLAG_LOCKED) == 0 || (pImeDpi->ImeInfo.fdwProperty & IME_PROP_END_UNLOAD) == 0) { - RtlLeaveCriticalSection(&g_csImeDpi); + RtlLeaveCriticalSection(&gcsImeDpi); return; } } @@ -791,7 +791,7 @@ VOID WINAPI ImmUnlockImeDpi(PIMEDPI pImeDpi) Imm32FreeImeDpi(pImeDpi, TRUE); ImmLocalFree(pImeDpi); - RtlLeaveCriticalSection(&g_csImeDpi); + RtlLeaveCriticalSection(&gcsImeDpi); } /*********************************************************************** diff --git a/dll/win32/imm32/imm.c b/dll/win32/imm32/imm.c index 4b6b72433f3..c5544580dda 100644 --- a/dll/win32/imm32/imm.c +++ b/dll/win32/imm32/imm.c @@ -29,7 +29,7 @@ static BOOL APIENTRY ImmInitializeGlobals(HMODULE hMod) if (g_bClientRegd) return TRUE; - status = RtlInitializeCriticalSection(&g_csImeDpi); + status = RtlInitializeCriticalSection(&gcsImeDpi); if (NT_ERROR(status)) return FALSE; @@ -159,14 +159,14 @@ BOOL WINAPI ImmFreeLayout(DWORD dwUnknown) } else if (dwUnknown == 2) { - RtlEnterCriticalSection(&g_csImeDpi); + RtlEnterCriticalSection(&gcsImeDpi); Retry: for (pImeDpi = g_pImeDpiList; pImeDpi; pImeDpi = pImeDpi->pNext) { if (Imm32ReleaseIME(pImeDpi->hKL)) goto Retry; } - RtlLeaveCriticalSection(&g_csImeDpi); + RtlLeaveCriticalSection(&gcsImeDpi); } else { @@ -1291,7 +1291,7 @@ BOOL WINAPI DllMain(HINSTANCE hinstDLL, DWORD fdwReason, LPVOID lpReserved) break; case DLL_PROCESS_DETACH: - RtlDeleteCriticalSection(&g_csImeDpi); + RtlDeleteCriticalSection(&gcsImeDpi); TRACE("imm32.dll is unloaded\n"); break; } diff --git a/dll/win32/imm32/precomp.h b/dll/win32/imm32/precomp.h index e2131bcf4e4..4ddcd216e53 100644 --- a/dll/win32/imm32/precomp.h +++ b/dll/win32/imm32/precomp.h @@ -70,7 +70,7 @@ typedef struct REG_IME } REG_IME, *PREG_IME; extern HMODULE g_hImm32Inst; -extern RTL_CRITICAL_SECTION g_csImeDpi; +extern RTL_CRITICAL_SECTION gcsImeDpi; extern PIMEDPI g_pImeDpiList; extern PSERVERINFO gpsi; extern SHAREDINFO gSharedInfo;
2 years, 12 months
1
0
0
0
← Newer
1
...
10
11
12
13
14
15
16
Older →
Jump to page:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
Results per page:
10
25
50
100
200