Commit Graph
89148 Commits
Author SHA1 Message Date
Whindmar Saksit 2885d40937 [SYSSETUP] Unattended ComputerName=* means random name (#9267)
Windows supports[^1] using * as "automatic" for some entries. Let's support it as well.

[^1]: https://web.archive.org/web/20070506023846/http://www.microsoft.com/technet/prodtechnol/Windows2000Pro/deploy/unattend/sp1ch01.mspx
2026-07-09 23:35:05 +02:00
Hermès Bélusca-Maïto 8b5e6383f2 [COMCTL32] Pass a couple of window messages to the active page of property sheets (#9239)
CORE-20681

Send `WM_ACTIVATE` and `WM_ACTIVATEAPP` to the property sheet active page.
And do the same with `WM_ENABLE`, `WM_QUERYENDSESSION`, `WM_ENDSESSION`,
and `WM_DEVICECHANGE`, after sending them to the tab control first.

Similar in spirit to commit d09c3d0af8.
2026-07-09 20:32:29 +02:00
Hermès Bélusca-Maïto 3b157605bc [COMCTL32] Pass WM_SYSCOLORCHANGE/WM_DISPLAYCHANGE/WM_WININICHANGE also to the property sheet tab control (#9239)
Addendum to commit d09c3d0af8.

CORE-13212, CORE-20681
2026-07-09 20:32:13 +02:00
Ethem Çılgın 7d08042343 [SHELL32] Improve Turkish (tr-TR) translation (#9222)
Translate several missing English strings and fix translation error in the context menu.

- Update `IDS_MOVETOMENU` from `"Di&zini kopyala..."` to `"Di&zine taşı..."`. The previous translation mistakenly used "kopyala" (copy) for a move operation, which caused confusion and duplicated string appearance in the shell context menu.
- Complete translations for various previously untranslated strings (including advanced folder options, visual effects, and shortcut run states).
2026-07-09 15:14:13 +03:00
Karol Gocłowski 10186d2d13 [RUNAS] Add Polish (pl-PL) translation (#9180) 2026-07-09 14:54:10 +03:00
Ahmed Arif 63deca5a96 [ACPI][UEFI] Use bootloader-provided ACPI root pointer in OSL (#8980)
Fix ACPI table discovery on the UEFI boot path by teaching the ACPI OSL
to use the loader-provided ACPI root table information instead of relying
only on legacy BIOS RSDP scanning:

- Build a synthetic RSDP from the ACPI BIOS configuration node
  populated by the bootloader
- Fallback to the old scan only if that data is unavailable
- Keep full 64-bit physical addresses when mapping ACPI tables
- Improve failure diagnostics if initialization still fails

This lets ACPICA initialize from the UEFI-provided RSDT/XSDT path.
CORE-11954

So QEMU Q35 on UEFI is now able to discover ACPI tables through the loader-
provided root table path, which fixes 0x7B INACCESSIBLE_BOOT_DEVICE bugcheck:

https://github.com/user-attachments/assets/25d4d9c9-4197-496b-84f9-e5642c65809d
2026-07-09 01:40:17 +03:00
Timo Kreuzer d7aa4ad3f3 [SYSSETUP] Fix use of uninitialized variable 2026-07-08 11:07:34 +00:00
Timo Kreuzer 5e428f34df [RTL_UNITTEST] Add RtlpInitialize
This will be compiled as a dummy in the test library, but in the unit test it will actually initialize the required RTL things.
For now it is only RtlpInitializeVectoredExceptionHandling.
This prevents a problem with the RtlVirtualUnwind test.
2026-07-07 11:32:46 +00:00
Timo Kreuzer 7aef1353e9 [ROSAUTOTEST] Fix testlist parsing
- Fix reading of test list. Fixes large test lists, that previously got truncated and could result in a crash.
- Prevent crash on parsing invalid test lists.
- Use an std::string for the list storage.
2026-07-07 11:32:08 +00:00
Timo Kreuzer 877416e6a5 [ROSAUTOTEST] Don't run random executables in the bin folder
Instead only run *test.exe.
Stops randomly spawning gui apps and then timing out.
2026-07-07 11:32:08 +00:00
Timo Kreuzer 731ff54e56 [XDK] Fix C++ definition of RTL_NUMBER_OF_V2 for GCC 2026-07-07 11:32:08 +00:00
Timo Kreuzer 72425186d7 [KMTEST] Rename kmtest_.exe back to kmtest.exe 2026-07-07 11:32:08 +00:00
Timo Kreuzer d8b075e382 [ROSAUTOTEST] Handle test executable names that don't have an underscore
This removes the need for the trailing underscore in "kmtest_.exe"
2026-07-07 11:32:08 +00:00
Katayama Hirofumi MZ d6ac48ec5d [MSPAINT] Support dithering drawing (#9175)
Support drawing with dithering on
monochrome palette mode.
JIRA issue: CORE-15990
- Enhance drawing routines for
  dithering in drawing.cpp.
- Add VirtualBrush class to the
  tools model in order to virtualize
  the drawing colors.
- Move PaletteModel::CreateDitherBrush
  to drawing.cpp ::CreateDitherBrush.
Co-authored-by: Hermès BÉLUSCA - MAÏTO <[email protected]>
2026-07-07 12:44:29 +09:00
Oleg Dubinskiy f729134316 [USER32] Implement IsServerSideWindow() (undocumented) (#9229)
CORE-19946
Adapted from PR #7577

Implement the undocumented `IsServerSideWindow()` function in user32.
It checks whether a window has a window procedure that resides in kernel
mode, and returns a boolean condition based on the appropriate internal
window state flag (`WNDS_SERVERSIDEWINDOWPROC`).

This function is not officially documented by Microsoft, but there exists
unofficial documentation[^1] for it.

It is required and used internally by uxtheme.dll from Windows XP/2003/Vista/7/etc.
The log spams with it a lot, when using uxtheme.dll from Windows in ReactOS.

[^1]: https://undoc.airesoft.co.uk/user32.dll/IsServerSideWindow.php
2026-07-06 18:01:29 +02:00
Oleg DubinskiyandMohammad Amin Mollazadeh c126bccb4b [USER32_APITEST] Add a test for IsServerSideWindow() (#9229)
CORE-19946
Adapted from PR #7577

This function tests whether a window has a window procedure that resides in kernel mode.
It is not documented by Microsoft, but unofficial (3rd party) documentation[^1] exists.
It is required and used internally by uxtheme.dll from Windows XP/2003/Vista/7/etc.

[^1]: https://undoc.airesoft.co.uk/user32.dll/IsServerSideWindow.php

Co-authored-by: Mohammad Amin Mollazadeh <[email protected]>
2026-07-06 17:58:55 +02:00
Oleg Dubinskiy 55eb678043 [SDK] Add the IsServerSideWindow() function prototype in undocuser.h (#9229)
CORE-19946
See also PR #7577

This function is not officially documented.
2026-07-06 17:58:41 +02:00
Whindmar Saksit 55c0ae4198 [GITHUB] Try flexbison.7z fallback mirror (#9247) 2026-07-06 12:51:07 +02:00
Eric Kohl 71ee75477e [WKSSVC][NETAPI32] Fix NetGetJoinInformation 2026-07-04 22:41:48 +02:00
Mohammad Amin Mollazadeh 64f1cf3b6d [WIN32SS:NTUSER] Fix DrawText ellipsification bug (#9240)
CORE-20581

Fix DrawText ellipsification rendering bug when `DT_WORD_ELLIPSIS` / `DT_PATH_ELLIPSIS` is used.

Import patch from Wine 11.3: wine-mirror/wine@5909e90 (https://gitlab.winehq.org/wine/wine/-/merge_requests/11298)
```
user32: Fix lastSlash handling in TEXT_PathEllipsify.

Set lastSlash to end of string when no path separator is found.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=59727

wine commit id 5909e9070f2fba8f6231e6a2b1459dadce524b4b by Maotong Zhang <[email protected]>
```
2026-07-04 20:25:18 +02:00
Hermès Bélusca-Maïto c67be4ceff [ROSTESTS] Add an interactive "menuaccels" test to view window keyboard messages
This test allows viewing the window keyboard messages (`WM_KEYDOWN/UP`,
`WM_CHAR`, ...) that are sent by Win32k whenever the user presses keys,
including what happens when Alt+Numpad combinations are typed in.

The application shows the list of received messages in a format similar
to that of Microsoft Spy++.
2026-07-04 19:28:17 +02:00
Carl J. Bialorucki 6117b1bdef [SYSSETUP][BOOTDATA] Add winevdm as an optional module (#9219)
- Add winevdm_setup as an optional module that can be preloaded on install
- Prompt to install both gecko and winevdm if the installer is not on disk
- Change "DisableGeckoInst" to "DisableAddonsInst" because we are installing more than just Gecko now
- No longer use appwiz,,install_gecko hack from wine appwiz
- Delete installer after successfully installing winevdm and gecko locally
2026-07-04 12:03:47 -05:00
Timo Kreuzer 5e76d075f1 [WIN32K:ENG] Relax surface parameter validation
If no bitmap buffer size is provided (e.g. allocation path from EngCreateBitmap), do not validate that the size calculation is valid. Should fix some display drivers, like Radeon IGP 320M.
See CORE-13036, CORE-11676
2026-07-04 07:55:24 +00:00
Mohammad Amin Mollazadeh 3d86d5eed9 [SHCORE] IsOS(OS_XPORGREATER) should return TRUE on NT 6.0+ (#9196)
CORE-20577

Even though the official documentation[^1] says `IsOS(OS_XPORGREATER)` always
returns FALSE, the tests show otherwise and there are application compatibility
issues otherwise.

[^1]: https://learn.microsoft.com/en-us/windows/win32/api/shlwapi/nf-shlwapi-isos
2026-07-03 19:09:49 +02:00
Mohammad Amin Mollazadeh cb25e90266 [SHLWAPI_APITEST] Add tests for IsOS() (#9196)
CORE-20577

Test some `OS_*` values that should return FALSE, and other values that
actually return TRUE, contrary to what the official documentation[^1] claims.

[^1]: https://learn.microsoft.com/en-us/windows/win32/api/shlwapi/nf-shlwapi-isos
2026-07-03 19:09:44 +02:00
Timo Kreuzer 7955690ad7 [NTOS:EX] Create a stub for SystemModuleInformationEx sysinfo class
The stub returns STATUS_INVALID_INFO_CLASS rather than STATUS_NOT_IMPLEMENTED.
This is a temporary measure to indicate to ntdll_winetest that this system information class is not implemented and prevent the test from crashing.
2026-07-03 17:04:11 +00:00
Timo Kreuzer c6410fb0c2 [NTOS:EX] Fix query of SystemTimeAdjustmentInformation 2026-07-03 17:04:11 +00:00
Timo Kreuzer feb0f56da7 [NTOS:EX] Fix query of SystemInterruptInformation 2026-07-03 17:04:11 +00:00
Timo Kreuzer eb3d5a4f9d [NTOS:EX] Implement query of SystemRecommendedSharedDataAlignment 2026-07-03 17:04:11 +00:00
Timo Kreuzer 05017d7160 [NTOS:EX] Implement query of SystemExtendedProcessInformation 2026-07-03 17:04:11 +00:00
Timo Kreuzer f7cac4a97c [NDK] Add SYSTEM_EXTENDED_THREAD_INFORMATION 2026-07-03 17:04:11 +00:00
Timo Kreuzer ef7d4d2043 [NTOS:EX] Implement query of SystemProcessorBrandString 2026-07-03 17:04:11 +00:00
Timo Kreuzer 1704b28ed0 [HAL] Implement HaliQueryProcessorBrandString 2026-07-03 17:04:11 +00:00
Timo Kreuzer 5ab5b8e5f3 [NTOS:EX] Implement query of SystemEmulationProcessorInformation 2026-07-03 17:04:11 +00:00
Timo Kreuzer 252a552dc6 [NTOS:EX] Implement query of SystemEmulationBasicInformation 2026-07-03 17:04:11 +00:00
Katayama Hirofumi MZ 79761d88fd [SHELL32][SHLWAPI][SHELL32_APITEST][SDK] Support AssocCreateElement (#9215)
Prepare for CLSID_QueryAssociations.
JIRA issue: CORE-20467
- Add dll/win32/shell32/evalcmd/
  elements.cpp.
- Implement AssocCreateElement
  function in elements.cpp.
- Modify shell32.spec.
- Fix shlwapi!AssocCreate by using
  AssocCreateElement.
- Add SKGetValueW and
  SKSetValueW prototypes into
  <shlwapi_undoc.h>.
- Add AssocCreateElement
  prototype into <shlwapi_undoc.h>.
- Add some CLSIDs into
  <shlguid_undoc.h>.
- Add some resource strings into
  shlwapi.
- Add AssocGetPerceivedType
  prototype into <shlwapi.h>.
- Add AssocCreateElement
  testcase into shell32_apitest.
2026-07-04 01:10:31 +09:00
Mohammad Amin Mollazadeh f66f40ec43 [RICHED20] Fix crash on copy (#9224)
CORE-20482

The reason for the crash was a wrong sign extension being done when right-shifting an integer.
Casting to an unsigned integer allows the correct zero-extension instead.

Import patch from Wine 11.3: wine-mirror/wine@bb4ef1f (https://gitlab.winehq.org/wine/wine/-/merge_requests/9776)
```
riched20: Fix crash when copying text.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=59005
wine commit id bb4ef1fbf7d8dae627025ea698c740cca8d15a06 by Piotr Caban <[email protected]>
```
2026-07-03 14:30:52 +02:00
Mohammad Amin MollazadehandSimone Mario Lombardo 6d8a5fa0bb [WIN32SS:NTGDI] Allow calling NtGdiCreateHalftonePalette with a NULL hDC (#9217)
CORE-20231

Tests show this is allowed on Windows and even Wine. Also, official MS
Windows SDK headers indicate that the `CreateHalftonePalette()` `hDC`
parameter is optional, and so can be NULL.

Not allowing a NULL `hDC` caused compatibility issues, breaking applications
like Internet Explorer 8.0 and Microsoft Encarta.

Make `NtGdiCreateHalftonePalette()` accept a NULL `hDC`, fixing its crash
in this case, and only locking it when it's not NULL. Simplify also the
function execution path.

Co-authored-by: Simone Mario Lombardo <[email protected]>
2026-07-02 20:19:33 +02:00
Mohammad Amin Mollazadeh 3e78f9a735 [GDI32_APITEST] Add a test for CreateHalftonePalette (#9217)
CORE-20231

The test calls `CreateHalftonePalette(NULL)` and verifies it returns
a valid palette.
2026-07-02 20:19:33 +02:00
Timo Kreuzer ed51a5d1e2 [RTL][NTDLL] Implement processor related NT6+ functions
Implements RtlGetCurrentProcessorNumberEx, RtlIsProcessorFeaturePresent
2026-07-01 21:45:34 +00:00
Timo Kreuzer dbb4d36927 [NTOS:KE][NTDLL][NTDLL_VISTA] Implement NtGetCurrentProcessorNumberEx 2026-07-01 21:45:34 +00:00
Timo Kreuzer aab0eac949 [NTDLL_APITEST] Add test for NtGetCurrentProcessorNumberEx 2026-07-01 21:45:34 +00:00
Timo Kreuzer 098532b9c5 [NDK] Add NtGetCurrentProcessorNumberEx 2026-07-01 21:45:34 +00:00
Amine Khaldi deb11f4e67 [URLMON_WINETEST] Sync with Wine 10.0. CORE-20596 2026-07-01 16:58:14 +01:00
Amine Khaldi 72eb24c100 [PSDK] Update urlmon.idl. CORE-20596 2026-07-01 16:58:14 +01:00
Whindmar Saksit ff2ad34155 [CABVIEW][ZIPFLDR] Implement ParseDisplayName and GetDetailsEx (#9197) 2026-07-01 12:29:53 +02:00
Whindmar Saksit c891aefdcf [SHELL32] Implement CFolder[Item] getters/setters (#9173) 2026-07-01 11:41:17 +02:00
Timo Kreuzer 6679825f21 [WS2_32] Import inet_addr from wine
The old implementation was buggy and caused stack corruption (triggered by ws2_32_winetest:sock test_inet_pton)
2026-07-01 06:52:45 +00:00
Eric Kohl e848ce1c52 [NETSH] Add the pfnOsVersionCheck function to the internal data structures and retrieve the WMI version information 2026-06-30 23:14:18 +02:00
Whindmar Saksit e21afa5b21 [SHLEXTDBG] Dump IShellFolder column names and properties (#9228) 2026-06-30 14:50:52 +02:00