Commit Graph
87561 Commits
Author SHA1 Message Date
Eric Kohl 4e425b54b6 [BOOTDATA] Add missing Locale for Bengali (Bangaldesh)
This should fix CORE-20213. Please test again.
2025-07-23 22:25:46 +02:00
Doug Lyons 996bde80a9 [WIN32K] Fix gdi/dib horizontal line draw function crashes (#8263)
* [WIN32K] Fix gdi/dib assembly code and 'C' code horizontal line draw function crashes.
Do not do subtracts that cause a wrap to a negative value when determining length.
This affects bit depths of 8, 16, 24, and 32 Bits per Plane.

CORE-19634
CORE-13532
2025-07-22 13:09:53 -05:00
Eric Kohl ea189a3048 [IPCONFIG] Implement the /setclassid option
The current implementation does not notify the dhcp client of the changed registry setting. Windows IPCONFIG calls DhcpHandlePnpEvent after setting the DhcpClassId registry value.
2025-07-20 13:59:39 +02:00
Timo Kreuzer 9750f6decd [RTL/x64] Improve RtlUnwindInternal
- Implement RtlpExecuteHandlerForUnwind in asm
- Implement RtlpExecuteHandlerForUnwindHandler
- Use the correct context in DISPATCHER_CONTEXT when unwinding
- Handle collided unwinds
2025-07-20 10:42:26 +03:00
Timo Kreuzer 4d21384d8f [COMPILER_APITEST] Add a test for collided unwind 2025-07-20 10:42:26 +03:00
Timo Kreuzer 6334168bf5 [COMPILER_APITEST] Enable some SEH tests for MSVC builds 2025-07-20 10:42:26 +03:00
Katayama Hirofumi MZ d958a24678 [NTUSER][USER32_APITEST] Support ShowWindow.SW_FORCEMINIMIZE (#8261)
One more step to support ghost windows.
JIRA issue: CORE-19671
- Add IntForceMinimizeWindow helper
  function.
- Use IntForceMinimizeWindow in
  co_WinPosShowWindow function.
- Enhance ShowWindow testcase in
  user32_apitest.
- Add mask to the return value of
  GetWindowLong.
2025-07-20 13:14:01 +09:00
Eric Kohl 6ebf15d838 [IPCONFIG] Call DHCP functions directly
Use DhcpAcquireParameters and DhcpReleaseParameters instead of iphlpapi functions.
2025-07-19 13:31:25 +02:00
Eric Kohl cb0c31945e [DHCPCSVC] DSAcquireParams and DSReleaseParams must return an error code 2025-07-19 10:52:46 +02:00
Eric Kohl 28b35625dd [DHCPCSVC] Change AdapterName parameter to UNICODE
DhcpAcquireParameters and DhcpReleaseParameters use a UNICODE AdapterName parameter.
2025-07-18 23:31:21 +02:00
Ratin Gao 49e652b7b7 [NTOS:PS] Implement ProcessImageFileNameWin32 information class 2025-07-17 18:18:47 +03:00
Whindmar Saksit 805d4c7eea [RAPPS] Added LnkParameters Generate field to set the shortcut parameters (#8262) 2025-07-17 16:28:34 +02:00
Katayama Hirofumi MZ 519232df78 [MSCTF] Support TF_CreateCategoryMgr etc. (#8260)
Implementing missing features...
JIRA issue: CORE-19361
- Implement TF_CreateCategoryMgr
  and TF_CreateDisplayAttributeMgr.
- Rename g_tlsIndex as g_dwTLSIndex.
- Use ProcessAttach and
  ProcessDetach in DllMain.
2025-07-17 21:17:28 +09:00
George Bișoc a5ab400689 [SDK] Swap initguid and wdm headers
The WDM header contains power manager related GUIDs that were declared but never initialized properly due to the fact the initguid.h header wasn't at the top.
This patch fixes a linker error in the kernel where GUIDs like GUID_LIDSWITCH_STATE_CHANGE are used.
It's a hotfix for 624c3fd.
2025-07-16 22:08:55 +02:00
George Bișoc 624c3fd847 [SDK] Introduce the PO GUID library
This library aims to include all the public and global power manager related GUID identifiers into one shared library, of which they can be accessed across multiple modules of ReactOS, e.g. the kernel, ACPI, PCI, et al.

This patch is needed for the development of the Power Manager (#5719) to continue.

CORE-18969
2025-07-16 20:15:15 +02:00
Whindmar Saksit c40624ae2a [SHELL32] Only set state flag if state is set on items in DefView list (#8259)
CORE-20273
2025-07-16 13:36:02 +02:00
Justin Miller b8f1da6483 [BOOT] Make ACPI always copy on amd64 (#8238)
This just makes it so ACPI.sys is always loaded and copied by the bootcd no matter what on amd64.
On x86 it can depend on whether we're using an ACPI hal but is set up to never boot with ACPI on the bootcd.
2025-07-14 22:51:15 -07:00
Dmitry Borisov b558596409 [SPTILIB] Introduce SPTI static library for storage drivers (#8209)
Add a SCSI and ATA passthrough support helper library for direct use
from low-level storage drivers.

Tested with: CDRoller, CloneCD, Magic ISO
NOTE: Vbox seems to lack support for CD/DVD burning; tested on real hardware.

CORE-10191 CORE-16452
CORE-14788 CORE-18241
CORE-17256 CORE-13866
2025-07-13 22:49:51 +02:00
Piotr Hetnarowicz 5bd84f6f71 [NETSHELL] Update Polish (pl-PL) translation (#8208) 2025-07-13 19:35:07 +02:00
Piotr Hetnarowicz 2d886daabd [POWERCFG] Update Polish (pl-PL) translation (#8206) 2025-07-13 19:34:51 +02:00
Hermès Bélusca-Maïto 9b7c788cd0 [SETUPLDR] Add support for architecture-specific "SourceDisksNames" section (#8249)
Will be used for installing specific drivers on x64
(e.g. the ACPI driver, see PR #8238).

Add also the ARM64 define in the SETUPLIB spapisup.h header.
2025-07-13 19:23:06 +02:00
Katayama Hirofumi MZ a18a5734ac [MSCTF][CICERO][DOC] Fork MSCTF from Wine (#8245)
JIRA issue: CORE-19361
- Delete msctf.c and add msctf.cpp.
- Modify precomp.h and enable precompiled header.
- Modify media/doc/WINESYNC.txt.
- Add cicMemReCalloc function to cicero.
2025-07-13 18:30:42 +09:00
Matisse Rüdiger 853b446e38 [ACPPAGE] Update French (fr-FR) translation (#8248)
The word "colours" was left untranslated.
2025-07-12 22:06:15 +02:00
Piotr Hetnarowicz 92c399e0d8 [DEVMGR] Update Polish (pl-PL) translation (#8207) 2025-07-12 20:34:31 +02:00
Piotr Hetnarowicz 0459e0daff [STOBJECT] Update Polish (pl-PL) translation (#8198) 2025-07-12 20:33:36 +02:00
Piotr Hetnarowicz be032857f7 [HOTPLUG] Update Polish (pl-PL) translation (#8197) 2025-07-12 20:32:59 +02:00
Piotr Hetnarowicz d0aeaab947 [TASKMGR] Update Polish (pl-PL) translation (#8188) 2025-07-12 20:30:08 +02:00
Eric Kohl 0e5df9c51c [DHCPCSVC] Fix the options request list and add the class identifier to requests 2025-07-12 18:57:28 +02:00
Whindmar Saksit 8edf4f0926 [SHELL32][NTOBJSHEX] CDefaultContextMenu cannot close keys it does not own (#8233) 2025-07-12 15:18:39 +02:00
Whindmar Saksit 3fb2905c37 [SHELL32] Don't get icon and label from AutoRun.inf on floppy drives (#7953)
CORE-9881 (partial)
2025-07-12 15:16:38 +02:00
Mas Ahmad Muhammad a56e47fe60 [SETUP:REACTOS] Fix warning RC4206 in Indonesian (id-ID) translation (#8220)
Noticed by Katayama's comment from chat.reactos.org:

> Indonesian translation warning: base\setup\reactos\lang/id-ID(15): warning RC4206: title string too long; trunctated at 256

Fix problem by making the string length shorter, it's 245 chars now.
Addendum to 0.4.16-dev-862-g 7b5e004dd6.
2025-07-12 14:32:21 +03:00
Carl J. Bialorucki 117cd33b49 [PSDK] Sync winerror.h with wine-10.0 (#8244)
- Sync winerror.h to wine-10.0
- Fix a couple hacks that existed because we didn't do this sooner
- Fix an instance where Wine compares a pointer to S_OK to see if it's null
2025-07-11 14:12:09 -06:00
Katayama Hirofumi MZ 12fa72a06d [MSCTF] Make thread manager C++ (#8239)
Implemeting missing features...
JIRA issue: CORE-19361
- Delete threadmgr.c and add threadmgr.cpp.
- Make ITfThreadMgr implementation C++.
2025-07-11 09:35:18 +09:00
Oleg Dubinskiy 206b52833f [MMIXER] HACK: Decrease SteppingDelta for each volume value by 1
This workarounds broken changing volume level for left and right volume controls separately ("Speakers Volume" button in "Sound" tab of mmsys.cpl).
CORE-19190
2025-07-10 14:02:23 +02:00
Oleg Dubinskiy 376708b586 [MMIXER] Fix improperly working volume control
Fix broken volume level changing and left/right speakers balance level changing.
Get and set volume level value for all available output channels instead of only the 1st channel (available in MIXERCONTROLDETAILS.cChannels member), so other channels don't have a non-set volume values now. This allows to control the volume for all channels.
So now the volume control works correctly and hence, the volume level can be properly changed from Sound Properties (mmsys.cpl) and Volume Mixer (sndvol32.exe) as well.
Note that the volume level settings changed by user are not saved after reboot yet. We need to save (write) and then load (read) them at next boot from HKLM/System/CurrentControlSet/Control/DeviceClasses/KSCATEGORY_AUDIO/.../DeviceParameters/Mixer/.../* keys inside wdmaud.sys, similarly to as it's done in Windows XP/2003. It can be tested (and is tested sveral times by me and is confirmed) by using MS wdmaud.sys in ReactOS. It writes the values in that key, so the actual volume values are stored there.
Another key, HKCU/SOFTWARE/Microsoft/Windows/Applets/Volume Control/, is created and managed by sndvol32.exe instead, so it does not contain the actual values of volume levels.
CORE-17976
2025-07-10 14:02:23 +02:00
Timo Kreuzer 7e4f12743f [NTOS:PS/x64] Use KiGetTrapContext from PspGetOrSetContextKernelRoutine 2025-07-10 14:57:09 +03:00
Timo Kreuzer 61b6cd9d28 [NTOS:KE] Implement KiGetTrapContextInternal 2025-07-10 14:57:09 +03:00
Timo Kreuzer f026550f89 [RTL] Implement RtlGetUnwindContext 2025-07-10 14:57:09 +03:00
Timo Kreuzer 98ed87b556 [RTL] Fix RtlSetUnwindContext
Only set the registers requested by ContextFlags
2025-07-10 14:57:09 +03:00
Timo Kreuzer d23ee5f365 [PSEH] Make structures more SEH3 compatible 2025-07-10 11:15:23 +03:00
Timo Kreuzer 6d2eb03402 [COMPILER_APITEST] More SEH tests 2025-07-10 11:15:23 +03:00
Timo Kreuzer cfb579dd67 [PSEH3] Fix unlinking of EH frames during unwind.
On Windows the function that calls the language specific exception handler function registers it's own exception handler, so the top of the exception chain does not point to our own handler. We need to take that into account when unwinding the stack and removing each handler as we go.
2025-07-10 11:15:23 +03:00
Timo Kreuzer ff8d24cabb [PSEH3] Fix _SEH3_LEAVE
Previously, when leave was used in the except or finally block of a nested try block, it would jump back to the start of the except/finally block, resulting in an endless loop. This is fixed by jumping back to a label at the beginning of the try block, which is only visible from within the try block itself and from there to the end of the SEH block.
Fixes seh0055 testcase of MS SEH tests.
2025-07-10 11:15:23 +03:00
Justin Miller d054f63e68 [HALACPI] Initialize HalpPicVectorRedirect with the full 0-15 array
This probably seems a little silly that I'm making a change to an array
we don't really use but because of this little bug ACPI was getting
reported as 0xA which is incorrect! As we call IoConnectInterrupt with
0x9 later. This makes sure that the IRQ from FADT is correct.
2025-07-09 20:39:48 -07:00
Katayama Hirofumi MZ e7358c5930 [NTUSER][USER32] Fix IME UI exception (#8227)
Fix BSoD when toggling visibility of the IME status
window (IME Toolbar).
JIRA issue: CORE-20261
- Add IntGetImeUIFromWnd helper function.
- Fix exception in IntNotifyImeShowStatus function.
- Fix initialization of IME UI in ImeWndProc_common
  function.
- Delete RegisterIMEClass function.
2025-07-09 08:16:26 +09:00
Hermès Bélusca-Maïto 38d07d3a24 [WINLOGON/WLNTFYTESTS] Add semi-"interactive" tests for Winlogon notifications (#8234)
Add a `wlntfytests.dll` in `ReactOS\bin\suppl`, containing tests for Winlogon notifications.

To use it:
- Register the dll with `regsvr32 <path_to>\wlntfytests.dll` and reboot
  the machine.
- With a debugger, observe the traces emitted by the dll, whenever any
  Winlogon notification is emitted. If Winlogon debugging is enabled,
  a debug-break is made everytime a notification is invoked.
- Once testing is done, unregister the dll with `regsvr32 /u <path_to>\wlntfytests.dll`
  and reboot the machine.

For each received notification, the handlers dump the contents of the
`WLX_NOTIFICATION_INFO` structure, and verify that the notifications
are received in the correct expected order. This is done by keeping
what the previous received notification was, before comparing it with
the expected one(s) that must precede the new notification being received.

References:
- https://learn.microsoft.com/en-us/windows/win32/secauthn/creating-a-winlogon-notification-package
- https://learn.microsoft.com/en-us/windows/win32/secauthn/winlogon-notification-events
- https://rsdn.org/article/baseserv/winlogon.xml
2025-07-08 21:21:11 +02:00
Justin Miller 02343c22f6 [RTL] Partial revert of Wine timer code in thread pooling (#8229)
* [SDK] Partial Revert of 0bf42067d2

It was found that the timer code from WINE doesn't work as well as ours,
This is a revert from that part of the PR as it doesn't change any of the real threadpool code in all reality. Thanks to the investigation of Julenuri and Simone
JIRA issue: CORE-20245
2025-07-08 12:05:53 -07:00
Katayama Hirofumi MZ 3917c60749 [MSCTF] Make input processor profiles C++ (#8232)
Implementing missing features...
JIRA issue: CORE-19361
- Delete inputprocessor.c and add
  inputprocessor.cpp.
- Make ITfInputProcessorProfiles
  implementation C++.
2025-07-08 21:20:57 +09:00
Eric Kohl 8fbbb41a19 [UMPNPMGR] Fix a typo in a DPRINT line 2025-07-07 20:07:28 +02:00
Eric Kohl 9d21d48cda [UMPNPMGR] PNP_FreeLogConf: Delete a resource configuration 2025-07-07 20:05:29 +02:00