Commit graph

80663 commits

Author SHA1 Message Date
Katayama Hirofumi MZ
f5bbd57d73 [IMM32] GetKeyboardLayout's parameter is a thread id
s/dwLayout/dwThreadId/
CORE-11700
2021-10-01 03:13:52 +09:00
Katayama Hirofumi MZ
e6a51b54c4 [IMM32] Move ImmFreeLayout from ime.c to imm.c
CORE-11700
2021-10-01 03:10:26 +09:00
Katayama Hirofumi MZ
33affbfecb
[IMM32] Rewrite ImmGetImeMenuItemsA/W (#3983)
- Rewrite ImmGetImeMenuItemsA and ImmGetImeMenuItemsW functions.
- Add Imm32GetImeMenuItemsAW, Imm32IsImcAnsi, Imm32ImeMenuAnsiToWide and Imm32ImeMenuWideToAnsi helper functions.
- Make IME module's ImeGetImeMenuItems function optional.
CORE-11700
2021-10-01 03:04:00 +09:00
Katayama Hirofumi MZ
9adc538c9c
[IMM32] Rewrite ImmSetActiveContext (#3982)
- Re-implement ImmSetActiveContext function.
- Modify NtUserNotifyIMEStatus prototype.
- Improve ImmSetConversionStatus and ImmSetOpenStatus functions.
CORE-11700
2021-10-01 03:02:56 +09:00
Hervé Poussineau
fc5d8e466f Revert "Disable some C++ code, which doesn't compile for me"
This reverts commit d8b1ff9056.
2021-09-29 22:58:31 +02:00
Hervé Poussineau
d8b1ff9056 Disable some C++ code, which doesn't compile for me 2021-09-29 22:56:35 +02:00
Hervé Poussineau
92d0dd3633 [VIDEOPRT] Create and setup new registry key only for non-legacy drivers
CORE-17734
2021-09-29 22:56:35 +02:00
He Yang
4d0cc20681
[IERNONCE] [RUNONCEEX] Add RunOnceEx functionality for ReactOS (#3926)
* [IERNONCE] Implement the registry management code.

* [EXPLORER] handle RunOnceEx by invoking RunOnceEx in iernonce.dll

* [IERNONCE] Display a dialog to show progress, and execute entries.

* [IERNONCE] Add `InitCallback` function
2021-09-29 11:30:32 +02:00
James Tabor
b5fae844de [NtGDI] Fix brush attribute transfer. 2021-09-28 19:08:45 -05:00
Katayama Hirofumi MZ
ef003fa47d
[IMM32] Rewrite ImmAssociateContext (#3979)
CORE-11700
2021-09-28 22:03:25 +09:00
Katayama Hirofumi MZ
a3c841f8e2
[IMM32] Implement ImmFreeLayout (#3978)
- Implement ImmFreeLayout function.
- Add Imm32ReleaseIME helper function.
CORE-11700
2021-09-28 22:02:30 +09:00
James Tabor
c6d1646c9d [ApiTests|GDI] Add test for attribute changes to Bitmaps.
Only opporpate place to add this test.
2021-09-27 23:52:00 -05:00
James Tabor
72f115d6ed [NtGDI] Set owner after changing object type. 2021-09-27 23:49:35 -05:00
James Tabor
d9f8b8b033 [NtGDI] Fix leaking of bitmaps while testing INFO DC's.
Soon to be commit test for metafiles.

ret = MaskBlt(hdc, 0, 0, 3, 4, dib_hdc, 0, 0, mask_bitmap, 0, 0, SRCCOPY);
2021-09-27 23:11:33 -05:00
James Tabor
8767aada75 [GDI32] Fix IV msvc build. 2021-09-27 19:08:43 -05:00
James Tabor
be4540821a [GDI32] Fix III msvc build. 2021-09-27 18:19:49 -05:00
Hermès Bélusca-Maïto
e6306db0c3
[GDI32] Fix build errors~~ 2021-09-28 00:48:24 +02:00
James Tabor
d4b2c97b67 [GDI32] Fix msvc build errors. 2021-09-27 17:30:40 -05:00
James Tabor
fc16259faf [GDI32] Update Wine Metafile Code
Sync/Port: Metafile code from wine.

Patches by Jacek Caban, Daniel Lehman, Zhiyi Zhang. Gabriel Ivancescu, Michael Stefaniuc, Francois Gouget, Nikolay Sivov Dmitry Timoshkov, Andrew EiKum, Piotr Caban and Alexandre Julliard.

This commit is dedicated to George Bisoc!
2021-09-27 16:18:20 -05:00
George Bișoc
9c1c88de3e
[NTOS:SE] Define a name macro for the threshold value
Instead of having this magic value as is, describe it within a macro for readability purposes.
2021-09-27 09:39:23 +02:00
George Bișoc
199f575342
[NTOS:SE] Check the privilege count against the maximum threshold
In SeCaptureLuidAndAttributesArray we must ensure that we don't go onto a potential integer overflow scenario by checking against the maximum limit threshold the kernel states. In addition, write an explicit name macro for the value.
2021-09-27 09:37:28 +02:00
Katayama Hirofumi MZ
a415bd46b1 [IMM32] Trivial tiny improvements
CORE-11700
2021-09-27 09:37:14 +09:00
Katayama Hirofumi MZ
b3382d8d24
[IMM32] Rewrite ImmLockIMC (#3975)
- Add Imm32InitContext and Imm32LockIMCEx helper functions.
- Re-implement ImmLockIMC function.
- Modify CLIENTIMC and INPUTCONTEXTDX structures.
CORE-11700
2021-09-27 09:32:24 +09:00
Katayama Hirofumi MZ
be9a788f8b
[IMM32] Improve Imm32CleanupContext and ImmLockClientImc (#3974)
- Improve Imm32CleanupContext and ImmLockClientImc functions.
- Add ValidateHandleNoErr and Imm32CheckImcProcess helper functions.
CORE-11700
2021-09-27 09:31:16 +09:00
Hermès Bélusca-Maïto
31c4c2efe9
[USER32] GetUserObjectSecurity/SetUserObjectSecurity: Just use UserSetLastNTError() in failure path. 2021-09-26 19:04:08 +02:00
Hermès Bélusca-Maïto
acde1e0e7b
[IMAGESOFT] Fix build. Addendum to commit 516c8829. 2021-09-26 03:50:13 +02:00
Hermès Bélusca-Maïto
9462350a92
[NTOS:RAWFS] LE JOKE! - Commit 7716bddd (r24564) claimed to "actually create the \\Device names so that user-mode can even talk to it", yet didn't bother to do that!
Certainly due to copy-pasta error from the original code.

A consequence of this oversight, was that the IoGetDeviceObjectPointer()
calls on these device names, in fltmgr!DriverEntry() couldn't work.
(See drivers/filters/fltmgr/Interface.c, line 1880 and below.)
2021-09-26 03:02:58 +02:00
Hermès Bélusca-Maïto
5ccd45ea58
[NTOS:RAWFS] Delete the previously-created devices in case the IoCreateDevice() calls fail. 2021-09-26 03:02:57 +02:00
Hermès Bélusca-Maïto
38ce67162f
[FS_REC] Fix load-lock acquisition. 2021-09-26 03:02:56 +02:00
Hermès Bélusca-Maïto
618076dc47
[FS_REC] Register a recognizer for FAT filesystem on CD-ROMs.
This handles the \FatCdrom device, supported by MS fastfat.
2021-09-26 03:02:56 +02:00
Hermès Bélusca-Maïto
00ae7c52f9
[IMAGESOFT] Reorganize the bitmap resource IDs.
- Moving the IDB_* with their corresponding TBICON_* defines.
- Reordering the BITMAP resources in the same order the defines are defined.
- Fixing values for IDS_READY and IDS_TOOLBAR_TEXT.
2021-09-26 02:43:02 +02:00
Hermès Bélusca-Maïto
516c8829ea
[IMAGESOFT] Use ARRAYSIZE / un-hardcode some sizeof(TYPE) where applicable. 2021-09-26 02:38:37 +02:00
Hermès Bélusca-Maïto
67fd29cae0
[IMAGESOFT] Commit db416e39 made toolbar imagelists creating failing because we overcounted the number of toolbar button bitmaps.
Indeed the count was based on the number of elements in TBBUTTON arrays;
however for some of the toolbars, extra entries corresponding to
separators are present, and thus the resulting number of elements is
always larger than the number of actual buttons for which an image is
associated. Passing this (larger) count to the InitImageList() function
therefore made image insertion fail after a certain point.

Now we pass an exact number of *images* instead.
2021-09-26 02:26:42 +02:00
James Tabor
970344bd16 [Win32SS|GDI] Implement seldom used API and update types for local DC's.
Two working in house application require these API. Known as FolCOL and Reach.
2021-09-25 11:57:26 -05:00
Arjav Garg
a602bc3550
[NTUSER] Fix UserSendKeyboardInput() KEYEVENTF_SCANCODE use case (CORE-17144) 2021-09-25 09:56:12 -04:00
Hermès Bélusca-Maïto
74513a75ab
[NTOS:OB] Minor refactoring.
- NtQuerySymbolicLinkObject(): Use an intermediate variable for the object header.
- Simplify code in ObpLookupEntryDirectory() by calling ObpReleaseLookupContextObject() instead.
- Use TAG_OBJECT_TYPE instead of hardcoded tag values.
2021-09-25 01:09:01 +02:00
Hermès Bélusca-Maïto
4c63ed5a7a
[NTOS:OB] Clarify and fix the usage of the Obp*DirectoryLock*() and ObpReleaseLookupContextObject() functions.
- Disentangle the usage of ObpAcquireDirectoryLockExclusive() when it's
  used only for accessing a directory structure, or as part of a lookup
  operation.

  The Obp*DirectoryLock*() -- both shared and exclusive -- functions
  are only for locking an OB directory, for reading or writing its
  structure members.

  When performing lookup operations (insertions/deletions of entries
  within a directory), use a ObpAcquireLookupContextLock() function that
  exclusively locks the directory and saves extra lock state, that can
  be used by ObpReleaseLookupContextObject() for cleanup.

- Add documentation for these functions.
2021-09-25 00:47:43 +02:00
George Bișoc
19cdb521d2
[NTOS:OB] Acquire the lock before setting directory's session ID 2021-09-24 19:49:40 +02:00
George Bișoc
0b4763f1b1
[NTOS:SE] Do not set SE_DACL_PRESENT flag that early
The function might assign the flag yet it could possibly fail on creating a DACL and insert an "access allowed" right to the access entry within the DACL. In this case, make sure we actually succeeded on all the tasks and THEN assign the flag that the DACL is truly present.

Also, make sure that the Current buffer size variable gets its new size so that we avoid overidding the memory of the DACL if the security descriptor wants both a DACL and SACL and so that happens that the DACL memory gets overwritten by the SACL.
2021-09-24 19:39:30 +02:00
George Bișoc
f341b9080b
[NTOS:SE] Set the SACL to the World security descriptor
Implement the portion chunk of code that is responsible for setting the system access control list (SACL) to the World security descriptor, based from SeWorldSid (World security identifier).
2021-09-24 19:13:16 +02:00
Katayama Hirofumi MZ
ca3fa7197d
[IMM32] Use Imm32IsImmMode and Imm32IsCiceroMode macros (#3971)
- Define Imm32IsImmMode, Imm32IsCiceroMode and Imm32Is16BitMode macros in "precomp.h".
- Improve Imm32InquireIme and Imm32CleanupContext functions.
- Add IME_SYSINFO_WINLOGON and IME_SYSINFO_WOW16 macros (from DDK) in psdk/imm.h.
- Modify CtfImeInquireExW and CtfImeSelectEx prototype.
CORE-11700
2021-09-24 22:06:29 +09:00
Victor Perevertkin
e372f2b19b
[REACTOS] Remove PowerPC Open Firmware-related code
Was forgotten during the overall PowerPC support removal.
Addendum to 6ef6fabfc5
2021-09-24 04:13:08 +03:00
Serge Gautherie
6e894bc1c7
[IPHLPAPI] GetAdaptersInfo(): Update Wine registry key name (#3556) 2021-09-24 03:49:05 +03:00
Serge Gautherie
acbe74497f
[PSDK] wincodec.idl: Add GUIDs which exist on WDK 7.1 (#3628) 2021-09-24 03:24:05 +03:00
George Bișoc
32db51fcff
[NTDLL_APITEST] Implement NtAdjustGroupsToken API tests 2021-09-23 17:38:42 +02:00
George Bișoc
8e6fc7a5f5
[NTOS:SE] Implement token groups adjusting 2021-09-23 17:38:31 +02:00
Katayama Hirofumi MZ
7b622283ee
[IMM32_APITEST] himc: Use ok rather than ok_int (#3970)
Use ok macro rather than ok_int macro. CORE-11700
2021-09-22 19:07:07 +09:00
Mark Jansen
4acf1007df
[FONTEXT] Restore folder icon 2021-09-21 21:42:32 +02:00
Mark Jansen
9276b3f1bf
[SHELL32] CFSFolder: Add fallback for failing shell extension
CORE-17673
2021-09-21 21:42:25 +02:00
Mark Jansen
ad83af36dd
[RAPPS] Move the CConfigParser to a new file 2021-09-21 19:00:21 +02:00