reactos.git
103 min ago[FREELDR] Support drives with 4k sector size master
Laura Konopinska [Sat, 30 Sep 2023 16:11:31 +0000 (18:11 +0200)]
[FREELDR] Support drives with 4k sector size
PR was reviewed at pull/5784

12 hours ago[SHELL32] Store target FS attributes in .lnk header (#7302)
Whindmar Saksit [Thu, 12 Sep 2024 17:28:15 +0000 (19:28 +0200)]
[SHELL32] Store target FS attributes in .lnk header (#7302)

14 hours ago[KMTESTS:SE] Fix failing tests.
Thomas Faber [Sun, 28 May 2023 02:37:47 +0000 (22:37 -0400)]
[KMTESTS:SE] Fix failing tests.

14 hours ago[NTOS:SE] Mark output parameters as such.
Thomas Faber [Sun, 28 May 2023 02:29:16 +0000 (22:29 -0400)]
[NTOS:SE] Mark output parameters as such.

14 hours ago[NDK] Match AUX_ACCESS_DATA definition with publicly available version.
Thomas Faber [Sat, 27 May 2023 22:24:29 +0000 (18:24 -0400)]
[NDK] Match AUX_ACCESS_DATA definition with publicly available version.

Looks like public symbols contain this structure starting with Win7,
so we can deduce what it looked like in Win2003.
Note that our previous definition was missing a second ULONG at the
end, which can be seen in the SeQueryInfoToken kmtest -- if you
allocated only sizeof(AUX_ACCESS_DATA), the test would crash with
a 4 byte buffer overflow.

14 hours ago[KMTESTS:SE] Don't modify internal data structure, this might cause buffer overrun.
Thomas Faber [Sat, 27 May 2023 18:07:49 +0000 (14:07 -0400)]
[KMTESTS:SE] Don't modify internal data structure, this might cause buffer overrun.

14 hours ago[KMTESTS:SE] Correctly allocate PrivilegeSet buffers.
Thomas Faber [Sat, 27 May 2023 18:01:44 +0000 (14:01 -0400)]
[KMTESTS:SE] Correctly allocate PrivilegeSet buffers.

14 hours ago[KMTESTS:SE] Avoid use of uninitialized pool and hardcoded offsets.
Thomas Faber [Sat, 27 May 2023 15:19:17 +0000 (11:19 -0400)]
[KMTESTS:SE] Avoid use of uninitialized pool and hardcoded offsets.

15 hours ago[NTOS:KE/x64] Fix exception information on page faults
Timo Kreuzer [Sat, 7 Sep 2024 20:33:48 +0000 (23:33 +0300)]
[NTOS:KE/x64] Fix exception information on page faults

Pass a proper write/execute flag in the ExceptionInformation[0] field of the exception record instead of the raw fault code. This fixes comdlg:filedlg wine test, which writes to a write protected resource section, which needs to be handled by kernel32 UnhandledExceptionFilter, which relies on this parameter to be correct.

15 hours ago[RTL/x64] Do not overwrite the original context during exception handling
Timo Kreuzer [Sat, 7 Sep 2024 19:10:28 +0000 (22:10 +0300)]
[RTL/x64] Do not overwrite the original context during exception handling

This fixes ExceptionContinueExecution cases, where we want to continue execution on the original context (or as modified by the handler), not on some halfway unwinded one.

16 hours ago[NTGDI] Rewrite NtGdiPolyDraw
Timo Kreuzer [Wed, 4 Sep 2024 18:14:31 +0000 (21:14 +0300)]
[NTGDI] Rewrite NtGdiPolyDraw

It is now a wrapper around GdiPolyDraw, which implements the main body of the function, while the Nt function only probes and captures the user mode data into safe kernel mode buffers.
Previously some people thought it was a great idea to just wrap the entire implementation in SEH, so when something throws an exception somewhere for whatever reason, we can just catch it here... and LEAK ALL RESOURCES IN THE PROCESS!
TODO: Rewrite all of this. It's broken everywhere.

31 hours ago[SERIALUI] Update Romanian (ro-RO) translation (#7341)
Andrei Miloiu [Wed, 11 Sep 2024 22:14:10 +0000 (01:14 +0300)]
[SERIALUI] Update Romanian (ro-RO) translation (#7341)

2 days ago[DESK] *.rc: Strip ", 0, 0" from the only font-line which is doing that (#7337)
Joachim Henze [Tue, 10 Sep 2024 22:35:50 +0000 (00:35 +0200)]
[DESK] *.rc: Strip ", 0, 0" from the only font-line which is doing that (#7337)

Each language had exactly one dlg which specified its font like that.
All other dialogs didn't use that style.

This doesn't fix anything. It also doesn't shrink the binary.
It just saves a few keystrokes in the rc's.
Shorter is better. Pure janitorial.

2 days ago[SDK] Raise KERNEL_VERSION_PATCH_LEVEL to 16 in the version.cmake 0.4.16-dev
Joachim Henze [Tue, 10 Sep 2024 18:00:32 +0000 (20:00 +0200)]
[SDK] Raise KERNEL_VERSION_PATCH_LEVEL to 16 in the version.cmake

0.4.16-dev starts here.

2 days ago[DESK][STOBJECT] Minor UI fixes.
Hermès Bélusca-Maïto [Tue, 10 Sep 2024 17:52:57 +0000 (19:52 +0200)]
[DESK][STOBJECT] Minor UI fixes.

- Fix "icone" typo in French (must be "icône");
- Add missing trailing semicolons for options introducing a choice;
- Tweak the IDC_EFFAPPEARANCE_KEYBOARDCUES translation to make it
  a little bit shorter and allowing to reduce the dialog a bit more
  (not yet "perfect" but towards the goal).

2 days ago[SHELL32] CDefView.cpp: fix MSVC build warning C5208
Hermès Bélusca-Maïto [Tue, 10 Sep 2024 13:09:58 +0000 (15:09 +0200)]
[SHELL32] CDefView.cpp: fix MSVC build warning C5208

"unnamed class used in typedef name cannot declare members other than
non-static data members, member enumerations, or member classes."

Suggestion by Whindmar Saksit.

Use `struct LISTVIEW_SORT_INFO` instead of the typedef, since this
is a structure defined and used only in this file, and we don't use
pointers to it (LPLISTVIEW_SORT_INFO).

3 days ago[DESK] _countof and rc-trivia (#7298)
Joachim Henze [Mon, 9 Sep 2024 23:46:08 +0000 (01:46 +0200)]
[DESK] _countof and rc-trivia (#7298)

- use _countof() consistently throughout the module instead of mixed ARRAYSIZE/countof.

In *.rc:
- the 3 AUTORADIOBUTTONS should not end with dots. In Windows 2k3sp2 ARB do never end with dots, I double-checked that here also in desk.cpl
- all 3 ARB should have an accel. I added the german ones, and added FIXMEs where I didn't know the correct accels
- the GROUPBOX IDC_SCREENS_DUMMY2 should not have an accel, but the only button in there PUSHBUTTON IDC_SCREENS_POWER_BUTTON should have an accel. This fixes a few existing accel collisions, e.g. in nl-NL.rc
- add a few additional FIXMEs for missing accels where I stumbled over them (most of them I fixed by guessing in the older branches, but I think it makes sense to let the actual native speakers fix them with the same accel that would be used in the 2k3sp2-version of *their* language)
- ro-RO.rc: Fix the forbidden characters according to the romanian-translation-rules

I noticed those glitches while porting back stuff, and acted on the FIXMEs in the backport instead of just fingerpointing to them (what I did on master).

3 days ago[WIN32K:ENG] Fix return value in EngAlphaBlend
Timo Kreuzer [Thu, 5 Sep 2024 10:15:25 +0000 (13:15 +0300)]
[WIN32K:ENG] Fix return value in EngAlphaBlend

3 days ago[UXTHEME] DrawNCPreview: Use DrawThemeTextEx() for drawing "Window Text"
Stanislav Motylkov [Mon, 9 Sep 2024 11:16:48 +0000 (14:16 +0300)]
[UXTHEME] DrawNCPreview: Use DrawThemeTextEx() for drawing "Window Text"

Addendum to 118869f69 and d4dc0cb54. CORE-5991

3 days ago[UXTHEME] Import DrawThemeTextEx() function from Wine (part of #6622)
Ethan Rodensky [Thu, 14 Mar 2024 18:00:52 +0000 (14:00 -0400)]
[UXTHEME] Import DrawThemeTextEx() function from Wine (part of #6622)

This is a Vista+ function, but it exists in Windows XP/2003 internally
and used for drawing "Window Text" with a shadow in DrawNCPreview().

And DrawThemeText() now acts as wrapper on top of it. CORE-5991

4 days ago[SHELL32] Fix CRecycleBin crash caused by PR #7173 (#7330)
Whindmar Saksit [Sun, 8 Sep 2024 20:08:15 +0000 (22:08 +0200)]
[SHELL32] Fix CRecycleBin crash caused by PR #7173 (#7330)

PR #7173 (22b913928f4a1d13120b0ec7a1c6889d37ec0e3a) fails to initialize the DELETED_FILE_RECORD struct when constructing a RecycleBin5File instance. This causes _ILCreateRecycleItem to create PIDLs without filenames and the CRecycleBin IShellFolder does not expect this to happen.

Also fixes incorrect usage of SHFileOperationW when restoring deleted files. The previous code might have worked by chance in the past if the string just happened to be double-null terminated as required by this API!

4 days ago[ELF] Remove remnant elf-powerpc.h header
Oleg Dubinskiy [Sun, 8 Sep 2024 19:35:13 +0000 (21:35 +0200)]
[ELF] Remove remnant elf-powerpc.h header
Addendum to 6ef6fabfc5271b9fb89cd9bdc2038588d55b3ea4e372f2b19b6325ce2eaefb750ff375cfbc4fdaba and c020a0ca28900ce0e3055f0b92bf6ae3273f3d58. It was forgotten to be removed in those commits.

4 days ago[NDK] Remove remnant PowerPC headers
Oleg Dubinskiy [Sun, 8 Sep 2024 18:59:55 +0000 (20:59 +0200)]
[NDK] Remove remnant PowerPC headers
Remove remaining ketypes.h and mmtypes.h public headers for PowerPC architecture.
Addendum to 6ef6fabfc5271b9fb89cd9bdc2038588d55b3ea4 and e372f2b19b6325ce2eaefb750ff375cfbc4fdaba. These headers were forgotten to be removed in those previous commits.

4 days ago[UXTHEME] DrawNCPreview: Do not draw the icon for inactive/active windows
Stanislav Motylkov [Sun, 8 Sep 2024 18:30:03 +0000 (21:30 +0300)]
[UXTHEME] DrawNCPreview: Do not draw the icon for inactive/active windows

This is how preview works in Windows. Addendum to 118869f69. CORE-5991

4 days ago[UXTHEME] Draw message box background properly in DrawNCPreview
Stanislav Motylkov [Sun, 8 Sep 2024 18:18:38 +0000 (21:18 +0300)]
[UXTHEME] Draw message box background properly in DrawNCPreview

Addendum to 118869f69. CORE-19592 CORE-5991

4 days agoRevert "[SHELL32] Show Product version on About dialog bmp (#3621)" (#7327) hbelusca/msgina_shell32_revert_jeffbox_banners 7327/head
Hermès Bélusca-Maïto [Sat, 7 Sep 2024 20:34:19 +0000 (22:34 +0200)]
Revert "[SHELL32] Show Product version on About dialog bmp (#3621)" (#7327)

This reverts commit 2636cff09fdb70bfe63c52ea9d2d24dbfc1e337f
by Cătălin Gabriel Drăghiță (@jeffbox12) as well as any subsequent changes.

This was agreed upon by the original author on our official Mattermost
chat (chat.reactos.org)

The reactos.bmp banners are again generated from the file:
  dll/win32/msgina/resources/svg/reactos.svg

4 days ago[NOTEPAD] Display error code if no error string is available (#7319)
Whindmar Saksit [Sun, 8 Sep 2024 11:47:32 +0000 (13:47 +0200)]
[NOTEPAD] Display error code if no error string is available (#7319)

4 days ago[NOTEPAD] Don't handle main window accelerators in Find dialog (#7320)
Whindmar Saksit [Sun, 8 Sep 2024 11:45:51 +0000 (13:45 +0200)]
[NOTEPAD] Don't handle main window accelerators in Find dialog (#7320)

4 days ago[SHELL32] Revise "Desktop" icon (#7312)
Splitwirez [Sun, 8 Sep 2024 11:10:05 +0000 (04:10 -0700)]
[SHELL32] Revise "Desktop" icon (#7312)

Makes the "Desktop" icon look a bit more than the thing from Windows 7. Both: bottom-most right-most within the taskbar, and also used within the comdlg32 file-open-dialog.

* Update desktop icon (35) in shell32

* Fix SVGs

4 days ago[COMDLG32] ChooseColor: Apply DarkShadow44's suggestions (#6971)
Katayama Hirofumi MZ [Sun, 8 Sep 2024 07:59:28 +0000 (16:59 +0900)]
[COMDLG32] ChooseColor: Apply DarkShadow44's suggestions (#6971)

Co-authored-by: Fabian Maurer <dark.shadow4@web.de>
Based on @DarkShadow44's merge
request to WineHQ.
JIRA issue: CORE-19402
Merge Request: https://gitlab.winehq.org/wine/wine/-/merge_requests/5756

Proposed changes
Extend CC_CheckDigitsInEdit's
parameters and set infoPtr->updating
to TRUE when updating.
Call CC_PaintLumBar function in
CC_WMCommand function.

4 days ago[NTOS:MM] Increase x64 system view and session view size
Timo Kreuzer [Fri, 6 Sep 2024 13:40:53 +0000 (16:40 +0300)]
[NTOS:MM] Increase x64 system view and session view size

We have plenty of address space and the desktop heap has grown, so we need some more space.

5 days ago[NTOS:PO] Update a comment (#6443)
Serge Gautherie [Sun, 8 Sep 2024 00:29:37 +0000 (02:29 +0200)]
[NTOS:PO] Update a comment (#6443)

Addendum to 9e43518 (0.4.15-dev-7560).

5 days ago[NTGDI] Prevent NULL pointer dereference in CLIPPING_UpdateGCRegion
Timo Kreuzer [Thu, 5 Sep 2024 10:17:18 +0000 (13:17 +0300)]
[NTGDI] Prevent NULL pointer dereference in CLIPPING_UpdateGCRegion

This can happen, when the paged pool is full. This will probably cause drawing issues, but at least we don't crash (in this place).

5 days ago[KEYBOARD] Fix left key code in extended_key_names in several layouts (#7311)
Tibor Lajos Füzi [Sat, 7 Sep 2024 23:32:27 +0000 (01:32 +0200)]
[KEYBOARD] Fix left key code in extended_key_names in several layouts (#7311)

I found this bug while testing random games, the left key didn't work.
After switching to other keyboard layouts (German, English) the problem
disappeared. There are games (e.g. Doom 3 demo, Tomb Raider 2 demo) that
somehow use this code from extended_key_names to determine which key the
user pressed. It might be a good idea to check other keyboard layouts too,
since I found that table inconsistent across languages.

5 days ago[NTUSER] Fix a 64 bit bug in timer code
Timo Kreuzer [Thu, 29 Aug 2024 07:29:38 +0000 (10:29 +0300)]
[NTUSER] Fix a 64 bit bug in timer code

The return value of RtlFindClearBitsAndSet is an ULONG, assigning it to an ULONG_PTR will not sign extend it. The error value will stay 0xFFFFFFFF. Comparing it to (UINT_PTR)-1 will sign extend and thus compare it to 0xFFFFFFFFFFFFFFFF on x64.
Also use NUM_WINDOW_LESS_TIMERS to initialize the bitmap, rather than the calculated size. This does not make a difference with the current value (32768), but if it was not the case, the bitmap would be larger than this, resulting in invalid bitmap indices being returned, which would cause bugs later on. Finally remove an ASSERT that can be triggered by tests.

5 days ago[EXPLORER] Update Turkish (tr-TR) translation (#7301)
Ethem De Santa [Sat, 7 Sep 2024 22:43:04 +0000 (01:43 +0300)]
[EXPLORER] Update Turkish (tr-TR) translation (#7301)

Translated the old English explorer shell lines into Turkish and fixed
some incorrect Turkish translations.

Adapted the translation from Windows 7 with Turkish locale.

5 days ago[UXTHEME] Add Turkish (tr-TR) translation (#7307)
Ethem De Santa [Sat, 7 Sep 2024 16:36:27 +0000 (19:36 +0300)]
[UXTHEME] Add Turkish (tr-TR) translation (#7307)

Matches Turkish translation in the desk.cpl applet, except one string
that I borrowed from Windows 7 with Turkish localization.

Updated the latter in desk.cpl as well.

5 days ago[NTUSER] Increase desktop heap size
Timo Kreuzer [Tue, 3 Sep 2024 19:52:35 +0000 (22:52 +0300)]
[NTUSER] Increase desktop heap size

Distinguish between the following 3 scenarios:
1. Interactive Winsta0, "Winlogon" desktop: use 128 KB
2. Interactive Winsta0, "Default" & other desktop: use 3 MB (x86) / 20 MB (x64)
3. Non-interactive winsta: use 128 KB

This is what Windows 2003 uses for the interactive desktops on x86 and what Windows 7 uses for x64. Fixes desktop heap exhaustion during testing. The previous value was 512 KB for all desktops.
It doesn't handle the even smaller "Disconnected" desktop, which is only meaningful for RDP sessions and we don't use it anyway.
See comments in the file for references.

6 days ago[COMCTL32] Fix edit control cursor positioning (#7317)
Doug Lyons [Fri, 6 Sep 2024 13:25:40 +0000 (08:25 -0500)]
[COMCTL32] Fix edit control cursor positioning (#7317)

Fix caret positioning regression from Wine Sync to Wine 5.0 affecting notepad.
Restore older Wine code that handles caret position with ReactOS better.
This was a regression from 0.4.15-dev-8612-g0707475 https://github.com/reactos/reactos/commit/0707475f6974a0add99fc396146c26a970c5148b

CORE-19731

6 days ago[SHELL32] Pass and expand .lnk working directory (#7314)
Whindmar Saksit [Fri, 6 Sep 2024 12:31:24 +0000 (14:31 +0200)]
[SHELL32] Pass and expand .lnk working directory (#7314)

9 days ago[COMCTL32][MEDIA] Sync comctl32 to wine 5.0 (#6789)
Justin Miller [Wed, 4 Sep 2024 04:54:05 +0000 (21:54 -0700)]
[COMCTL32][MEDIA] Sync comctl32 to wine 5.0 (#6789)

For SOME reason comctl32 has been synched manually multiple times to different versions and different pots
This PR aims to fix that

With the exception of button.c which all in all is a massive fork over wines code entirely.
and datetime.c which is at wine 6.0

Comctl32 is now at wine-5.0

9 days ago[SHELL32] Lnk propertysheet must disallow editing special targets (#6993)
Whindmar Saksit [Tue, 3 Sep 2024 15:38:03 +0000 (17:38 +0200)]
[SHELL32] Lnk propertysheet must disallow editing special targets (#6993)

CORE-16505

10 days ago[NOTEPAD] Handle serialized maximized state (#5806)
Whindmar Saksit [Mon, 2 Sep 2024 21:13:28 +0000 (23:13 +0200)]
[NOTEPAD] Handle serialized maximized state (#5806)

Fixes a bug where if you close Notepad while it is maximized, the next time Notepad is started it will start with its window placed as if maximized but it is still in the SW_RESTORE state and the "real normal placement" is lost.

SetWindowPlacement also takes care of making sure the window is placed correctly on the monitor workarea.

11 days ago[NTUSER] Optimize BroadcastSystemMessage a bit. Follow-up of #6884 (#7215)
Doug Lyons [Sun, 1 Sep 2024 18:24:22 +0000 (13:24 -0500)]
[NTUSER] Optimize BroadcastSystemMessage a bit. Follow-up of #6884 (#7215)

Optimize BroadcastSystemMessage with Environment parameter.
Minimize processing when UserModeMsg->lParam is NULL and KernelModeMsg->message != WM_WININICHANGE
Make sure that we have a UNICODE_NULL within lParamMsg based on comment from @whindsaks

11 days ago[NTGDI:FREETYPE] Account for spaces in x-dimension of IntExtTextOutW function (#7274)
Doug Lyons [Sun, 1 Sep 2024 18:18:23 +0000 (13:18 -0500)]
[NTGDI:FREETYPE] Account for spaces in x-dimension of IntExtTextOutW function (#7274)

@I_Kill_Bugs fix

CORE-11787, CORE-17721 and CORE-19721

For function IntExtTextOutW with space character, the x-dimension should be taken into account.
Fixes HexEdit 1.2.1 right side of display window not being cleared.

Account for x-dimension if TA_UPDATECP flag set and 'String' is not NULL.

Clarify 'etx' is ASCII End of Text

11 days ago[INTEROP_UNITTEST] Add interoperability tests for localized strings (#7129)
Stanislav Motylkov [Sun, 1 Sep 2024 12:22:29 +0000 (15:22 +0300)]
[INTEROP_UNITTEST] Add interoperability tests for localized strings (#7129)

Finally, an automated way to verify all these localized strings
that must be in sync between multiple modules.

CORE-18893

11 days ago[USER32_APITEST] Improve RedrawWindow API test by testing flags (#7160)
Tomáš Veselý [Sun, 1 Sep 2024 11:32:43 +0000 (13:32 +0200)]
[USER32_APITEST] Improve RedrawWindow API test by testing flags (#7160)

As part of fixing some bugs like CORE-13149, extend the tests to include more detailed examination of rendering functions. Extend the RedrawWindow test to include tests of all flags. As part of it, I am also testing the 2-point states of the render areas.

I moved the original test without changes into a separate function GetMessageRedrawWindowTest. For the flag tests I added FlagsRedrawWindowTest function. It sequentially tests the RedrawWindow with different flag combinations and compares the results with those discovered in Windows XP and Windows 11 (the values in both versions confirmed to be identical).

The API test turned out well in ReactOS, the only deviation was that in many cases (whenever the RDW_INVALIDATE flag is present) a WM_ERASEBKGND message is received after the window is rendered without the RDW_ERASE flag.
(this is what I'm focusing on now in https://github.com/turican0/reactos/tree/fix-RDW_ERASE-in-co_UserRedrawWindow, but before I merge it, I want to create more API tests)

11 days ago[FREELDR] Fix boot timeout regression on AMD64 (#7281)
Adam Słaboń [Sun, 1 Sep 2024 08:54:28 +0000 (08:54 +0000)]
[FREELDR] Fix boot timeout regression on AMD64 (#7281)

Initialize the BootMgrInfo struct globally, so the TimeOut value is guaranteed to be negative when no Multiboot cmdline is provided. This could happen when BootMain is called with a NULL pointer:
https://git.reactos.org/?p=reactos.git;a=blob;f=boot/freeldr/freeldr/arch/amd64/entry.S;hb=163f3407c8fa93ce06773fdf9fc53064506bd05e#l73
so CmdLine == NULL and LoadSettings is called with NULL, thus the CmdLineParse isn't run.

Fixes boot timeout regression introduced in commit 7bee32d2372feb55949714eec5c92ca7ef2754bf which occured only on AMD64 builds.

11 days ago[SDK][SHELL32] Make CLSID_NetworkConnections the default name (#7266)
Vitaly Orekhov [Sun, 1 Sep 2024 08:40:24 +0000 (11:40 +0300)]
[SDK][SHELL32] Make CLSID_NetworkConnections the default name (#7266)

- [SDK][INCLUDE] Redirect CLSID_ConnectionFolder to CLSID_NetworkConnections

CLSID_NetworkConnections is the official known name for the class behind it,
thus to avoid breaking current code I 'softlink' CLSID_ConnectionFolder
to the currently used CLSID_NetworkConnections in shlguid_undoc.h.

- [SHELL32] Refer to CLSID_NetworkConnections from PSDK

12 days ago[HALX86] acpi/madt.c: Rewrite it (#6032)
Serge Gautherie [Sat, 31 Aug 2024 21:35:50 +0000 (23:35 +0200)]
[HALX86] acpi/madt.c: Rewrite it (#6032)

Especially HalpParseApicTables() which looked early-WIP and was buggy.
And keep smp/mps/mps.c in sync'.

12 days ago[ADVPACK] files.c: Properly mark Wine diff
Serge Gautherie [Thu, 13 Oct 2022 17:56:10 +0000 (19:56 +0200)]
[ADVPACK] files.c: Properly mark Wine diff

Addendum to 6eb8a1d (0.4.15-dev-6918).

12 days ago[NTOS:KE] Clear NpxThread on rundown for SMP as well (#7151)
Justin Miller [Sat, 31 Aug 2024 20:18:07 +0000 (13:18 -0700)]
[NTOS:KE] Clear NpxThread on rundown for SMP as well (#7151)

clear NpxThread on rundown for SMP as well
Fixes the crash whenever a usermode thread is destroyed on x86

12 days ago[RAPPS] Fix AppInfo panel WM_SYSCOLORCHANGE bug (#7290)
Whindmar Saksit [Sat, 31 Aug 2024 20:10:35 +0000 (22:10 +0200)]
[RAPPS] Fix AppInfo panel WM_SYSCOLORCHANGE bug (#7290)

12 days ago[NTUSER] Address memory leak in co_WinPosSetWindowPos(). (#7284)
Marek Benc [Sat, 31 Aug 2024 20:07:33 +0000 (22:07 +0200)]
[NTUSER] Address memory leak in co_WinPosSetWindowPos(). (#7284)

CORE-19723

12 days ago[RAPPS] Show listview context menu when the keyboard menu button/Shift+F10 is pressed...
Whindmar Saksit [Sat, 31 Aug 2024 16:30:45 +0000 (18:30 +0200)]
[RAPPS] Show listview context menu when the keyboard menu button/Shift+F10 is pressed (#5620)

12 days ago[XMLLITE_WINETEST] Fully mark Wine diff
Serge Gautherie [Mon, 24 May 2021 06:56:17 +0000 (08:56 +0200)]
[XMLLITE_WINETEST] Fully mark Wine diff

Addendum to 3d1ca45 (0.4.15-dev-5553).

12 days ago[VFD] Properly mark ReactOS's diffs
Serge Gautherie [Sun, 14 Jun 2020 11:49:22 +0000 (13:49 +0200)]
[VFD] Properly mark ReactOS's diffs

Addendum to 25c7e1a (0.4.7-dev-1106) and follow-ups.

12 days ago[VFD] Remove 2 useless CMakeLists.txt
Serge Gautherie [Sun, 14 Jun 2020 11:49:22 +0000 (13:49 +0200)]
[VFD] Remove 2 useless CMakeLists.txt

Addendum to 25c7e1a (0.4.7-dev-1106).

12 days ago[DOC] 3rd Party Files.txt: Add 'Virtual Floppy Drive'
Serge Gautherie [Sun, 14 Jun 2020 11:49:22 +0000 (13:49 +0200)]
[DOC] 3rd Party Files.txt: Add 'Virtual Floppy Drive'

Addendum to 25c7e1a (0.4.7-dev-1106).

12 days ago[COMDLG32] Improve Portuguese (pt-PT) translation (#7236)
Jose Carlos Jesus [Sat, 31 Aug 2024 10:56:57 +0000 (06:56 -0400)]
[COMDLG32] Improve Portuguese (pt-PT) translation (#7236)

- Remove accel key from Ok buttons that are DEFPUSHBUTTON.
- Fix accelerator key collisions.

12 days ago[BROWSEUI] Improve Portuguese (pt-PT) translation (#7232)
Jose Carlos Jesus [Sat, 31 Aug 2024 10:50:19 +0000 (06:50 -0400)]
[BROWSEUI] Improve Portuguese (pt-PT) translation (#7232)

- Fix typos and improve pt-PT translation.
- Add file header.

13 days ago[WIN32NT_APITEST] Update NtUserSetTimer API tests (#7278)
Tomáš Veselý [Fri, 30 Aug 2024 23:26:15 +0000 (01:26 +0200)]
[WIN32NT_APITEST] Update NtUserSetTimer API tests (#7278)

JIRA issue: [CORE-9141](https://jira.reactos.org/browse/CORE-9141)

13 days ago[GDI32][NTUSER] Demote noisy debug prints
Timo Kreuzer [Tue, 27 Aug 2024 07:33:40 +0000 (10:33 +0300)]
[GDI32][NTUSER] Demote noisy debug prints

13 days ago[VIRTIO] Misc fixes (#7283)
Adam Słaboń [Fri, 30 Aug 2024 07:26:55 +0000 (07:26 +0000)]
[VIRTIO] Misc fixes (#7283)

- Add bugcodes dependency, fixes a rare build failure
- Fix for the sync part of commit 823fdb19d75b29352b1621e16f5c955153d90ed3, somehow it didn't pick up the change from the upstream commit https://github.com/virtio-win/kvm-guest-drivers-windows/commit/b22efbb8b80f76a81627396ed54bfbf4b02f80dc

13 days ago[BOOTDATA] Fix LiveCD autorun (#7282)
Adam Słaboń [Fri, 30 Aug 2024 07:16:31 +0000 (07:16 +0000)]
[BOOTDATA] Fix LiveCD autorun (#7282)

Use 'shellexecute' entry instead of 'open', because the latter
tries to execute a non-executable readme.txt file.

https://learn.microsoft.com/en-us/windows/win32/shell/autorun-cmds

Addendum to 4cc03bbf0192 (r71342).

2 weeks ago[RTL] Fix overflow case in vDbgPrintExWithPrefixInternal
Timo Kreuzer [Wed, 21 Aug 2024 08:05:09 +0000 (11:05 +0300)]
[RTL] Fix overflow case in vDbgPrintExWithPrefixInternal

The string should always be NULL terminated.

2 weeks ago[CRT] Fix link issues with __ftol2 when compiling for NT6
Timo Kreuzer [Thu, 29 Aug 2024 17:57:30 +0000 (20:57 +0300)]
[CRT] Fix link issues with __ftol2 when compiling for NT6

__ftol2 is exported from msvcrt on NT6+, not from ntdll for some reason. So native apps still need to statically link _ftol2 and _ftoul2_legacy, but apps linking to msvcrt only need to statically link _ftoul2_legacy (via msvcrtex), when on NT6+.

2 weeks ago[NTOS:CC] CcRosCreateVacb: Return error code on pool allocation failure (#7275)
Thamatip Chitpong [Fri, 30 Aug 2024 00:34:48 +0000 (07:34 +0700)]
[NTOS:CC] CcRosCreateVacb: Return error code on pool allocation failure (#7275)

Return STATUS_INSUFFICIENT_RESOURCES error code instead of accessing the invalid pointer.

2 weeks ago[SHELL32] Don't display non-enumerable nor non-folder items in Explorer tree (#7189)
Whindmar Saksit [Thu, 29 Aug 2024 18:45:59 +0000 (20:45 +0200)]
[SHELL32] Don't display non-enumerable nor non-folder items in Explorer tree (#7189)

This partially implements RegFolder required items as described by Geoff Chappell.

CORE-19176 CORE-14061

2 weeks ago[SETUP:REACTOS] Add the update-registry code (#7222) hbelusca/gui_setup_registry_update__setup_part_3 7222/head
Hermès Bélusca-Maïto [Tue, 9 Jan 2018 02:21:38 +0000 (03:21 +0100)]
[SETUP:REACTOS] Add the update-registry code (#7222)

This code has been tested on Windows and works as expected.

2 weeks ago[SETUP:REACTOS] Add some SetWindowRes* helper functions
Hermès Bélusca-Maïto [Thu, 8 Aug 2024 11:36:03 +0000 (13:36 +0200)]
[SETUP:REACTOS] Add some SetWindowRes* helper functions

2 weeks ago[USETUP] Update translations for some registry-related messages
Hermès Bélusca-Maïto [Wed, 28 Aug 2024 20:00:06 +0000 (22:00 +0200)]
[USETUP] Update translations for some registry-related messages

2 weeks ago[NTUSER] Fix window not updating when scrollbars created and removed. (#7245)
Doug Lyons [Wed, 28 Aug 2024 07:56:28 +0000 (02:56 -0500)]
[NTUSER] Fix window not updating when scrollbars created and removed. (#7245)

* Revise conditions for window complete redraw.

CORE-19669

Co-authored-by: Oleg Dubinskiy <oleg.dubinskij30@gmail.com>
Co-authored-by: Vitaly Orekhov <7opex0@mail.ru>
2 weeks ago[SETUP:REACTOS] Add partitioning and formatting support (#7159) hbelusca/setup_partitioning_with_gui_setup_part_1 7159/head
Hermès Bélusca-Maïto [Thu, 7 Mar 2019 01:30:08 +0000 (02:30 +0100)]
[SETUP:REACTOS] Add partitioning and formatting support (#7159)

CORE-13525

- Newly-created partitions and unpartitioned space ar reinserted
  or updated in correct order in the tree-list. Volume-creation
  information data associated with the tree items is persisted
  across operations.

- Reliably delete data associated to tree-list items via the
  TVN_DELETEITEM notification.
  This allows simplifying the cleanup function; keeping simple
  the code that deletes items when deleting partitions, etc.

- Make the PrintPartitionData() function call itself recursively on
  extended partitions to display the sub-list of logical partitions.

- Handle the new partition size in MB the same way as in USETUP.

- Allow existing partitions/volumes to be re-formatted, using
  common code with the partition creation dialog.

- Allow selecting unpartitioned space or non-formatted partitions
  for installing ReactOS: unused space will automatically be
  partitioned and non-formatted partitions formatted (the user
  is prompted for choosing the file system).

- Correctly zero the progress-bar position when starting file copy.
- Add missing file copy error handler in FileCopyCallback:
  just copying what USETUP does.

2 weeks ago[SETUP:REACTOS] Collect some UI elements into a common UI_CONTEXT structure.
Hermès Bélusca-Maïto [Tue, 20 Feb 2024 19:55:59 +0000 (20:55 +0100)]
[SETUP:REACTOS] Collect some UI elements into a common UI_CONTEXT structure.

Handles to some install-page UI elements, used in the installation thread,
are collected into a UI_CONTEXT structure.

2 weeks ago[SETUP:REACTOS] treelist.h: Fix TreeList_GetStyle/TreeList_SetStyle(Ex) for C language
Hermès Bélusca-Maïto [Fri, 16 Aug 2024 16:47:03 +0000 (18:47 +0200)]
[SETUP:REACTOS] treelist.h: Fix TreeList_GetStyle/TreeList_SetStyle(Ex) for C language

2 weeks ago[SETUP:REACTOS] treelist.h: Define few useful types. CMakeFiles.txt: Move add_pch...
Hermès Bélusca-Maïto [Thu, 7 Mar 2019 01:29:15 +0000 (02:29 +0100)]
[SETUP:REACTOS] treelist.h: Define few useful types. CMakeFiles.txt: Move add_pch around.

2 weeks ago[CMAKE] Statically link _ftol2/__ftoul2_legacy to libntdll
Timo Kreuzer [Sat, 24 Aug 2024 10:20:11 +0000 (13:20 +0300)]
[CMAKE] Statically link _ftol2/__ftoul2_legacy to libntdll

This is needed to resolve symbols of native applications like usetup, when compiled with latest VS.

2 weeks ago[CRT] Implement __ftoul2_legacy
Timo Kreuzer [Thu, 22 Aug 2024 14:00:29 +0000 (17:00 +0300)]
[CRT] Implement __ftoul2_legacy

This is used by CL v19.41+. It replicates the behavior of the inline assembly code that previous CL versions generated. According to tests it works the same as with previous VS versions.

2 weeks ago[COMPILER_APITEST] Add tests for float to int conversion
Timo Kreuzer [Wed, 21 Aug 2024 19:40:58 +0000 (22:40 +0300)]
[COMPILER_APITEST] Add tests for float to int conversion

These tests come with a VS solution, because that is the only way to test against a known good system, as the required runtime functions (like _ftol) are statically linked from the VS runtime library.

2 weeks ago[USER32_APITEST] Add scrollbar showing/hiding testcase (#7254)
Marek Benc [Tue, 27 Aug 2024 18:25:02 +0000 (20:25 +0200)]
[USER32_APITEST] Add scrollbar showing/hiding testcase (#7254)

Checks CORE-19669, making sure that CS_HREDRAW and CS_VREDRAW
are respected when the client area changes due to the scrollbar
disappearing or re-appearing.

ROSTESTS-397

Co-authored-by: Stanislav Motylkov <x86corez@gmail.com>
2 weeks ago[NTUSER] IntSetTimer: Update HintIndex on each call (#7087)
Tomáš Veselý [Tue, 27 Aug 2024 06:14:51 +0000 (08:14 +0200)]
[NTUSER] IntSetTimer: Update HintIndex on each call (#7087)

* fix CORE-9141 - adding a change to IDEvent after each pass
If the first index is 0 the first returned ID will be 0x8000, which is fine.
Co-authored-by: Joachim Henze <joachim.henze@reactos.org>
2 weeks ago[WIN32KNT_APITEST] Add NtUserSetTimer API tests (#7100)
Tomáš Veselý [Mon, 26 Aug 2024 19:34:30 +0000 (21:34 +0200)]
[WIN32KNT_APITEST] Add NtUserSetTimer API tests (#7100)

Test 1 - test of creating/canceling 20 timers and comparing the raw number of returned messages - without parent window
Test 2 - test of creating/cancelling 20 timers and comparing the raw number of returned messages - with parent window
Test 3 - test creation/cancellation of 40000 timers - without parent window
Test 4 - test of creation/cancellation of 40000 timers - with parent window
Test 5 - test creation/cancellation of 2 timers and compare their index to see if they differ - without parent window

Covers the case in CORE-9141 (see #7087).

2 weeks ago[SETUPLIB][REACTOS][USETUP] Split FS-volume-specific functionality from partitions... 7258/head
Hermès Bélusca-Maïto [Sat, 18 May 2024 21:09:16 +0000 (23:09 +0200)]
[SETUPLIB][REACTOS][USETUP] Split FS-volume-specific functionality from partitions (#7258)

CORE-13525

This greatly helps in reducing code complexity in some areas: code that
previously iterated over all partitions of a given disk, just to find
which ones were partitioned and contained a valid file system, now just
have to iterate over mounted volumes.
See in particular, `lib/utils/osdetect.c` and `lib/fsutil.c` .

- Remove FORMATSTATE "Preformatted" enum value;
- Cleanup osdetect code after introducing Volume support;
- Some simplifications for FormatState.

- Differentiate between 'new' partition and 'new' volume:

  * "New" partition: it has been created and added in the cached list,
    but not yet actually written into the disk.

  * "New" volume: newly-created volume (may be backed by a partition or
    not), not yet formatted. May exist on either new, or not new partition,
    or elsewhere.

- Cache partition and volume NT device names.

  These do not change across repartitioning operations, as long as the
  partition or the filesystem volume hasn't been deleted/recreated.
  This avoids doing \Device\Harddisk%u\Partition%u sprintf's everytime
  we need to retrieve the given partition or volume device name.

  When a partition/fileysystem volume is "virtually" created (i.e. in
  the partition list, but not yet committed to disk and exposed to the
  OS), no device partition number and device name are available yet.
  In particular, validate that no manipulation of \Device\HarddiskM\Partition0
  (i.e. the whole disk) is being made.

2 weeks ago[SETUPLIB] Add some device utility functions; to be used later (#7258)
Hermès Bélusca-Maïto [Fri, 12 Jul 2024 16:39:39 +0000 (18:39 +0200)]
[SETUPLIB] Add some device utility functions; to be used later (#7258)

2 weeks ago[NTOS:FSRTL] Check for the correct return status when inserting a new Filter Context...
Oleg Dubinskiy [Mon, 26 Aug 2024 09:16:49 +0000 (11:16 +0200)]
[NTOS:FSRTL] Check for the correct return status when inserting a new Filter Context entry
According to our declaration/definition, IoChangeFileObjectFilerContext returns NTSTATUS, not BOOLEAN. Zero return (which was actually checked before) for BOOLEAN means failure, but for NTSTATUS it's success. So it should (and now actually does) free and fail appropriately only in failure case, but not in success, when it shouldn't.
This fixes most of problems with fltmgr.sys driver from Windows XP/Server 2003 and a lot of 3rd party filter drivers which use it from many apps (Avast Free Antivirus all versions, Avira AntiVir Personal 8.2, Dr. Web Security Space 8.0, Kaspersky Antivirus 2012 etc. etc.).
CORE-14157, CORE-14635, CORE-19318

2 weeks ago[CMD] Convert to explicitly unicode
Timo Kreuzer [Sat, 18 May 2024 11:56:29 +0000 (14:56 +0300)]
[CMD] Convert to explicitly unicode

2 weeks ago[SHELL32] Create link must ask for a parsing name for file targets (#7267)
Whindmar Saksit [Sat, 24 Aug 2024 17:01:27 +0000 (19:01 +0200)]
[SHELL32] Create link must ask for a parsing name for file targets (#7267)

2 weeks ago[MSPAINT] it-IT.rc: Fix compiler warning (#7270)
Joachim Henze [Sat, 24 Aug 2024 04:04:48 +0000 (06:04 +0200)]
[MSPAINT] it-IT.rc: Fix compiler warning (#7270)

GCC8.4.0dbg warns about:
C:/ros/reactos/base/applications/mspaint/lang/it-IT.rc:267: unrecognized escape sequence

Fix that.

the regression was introduced by
0.4.15-dev-8555-g fbcbbd8768b8a3dda9013dfe3553867176c521b1 from (#7248)

2 weeks ago[SHDOCVW] CNSCBand must specify a ShowWindow command (#7268)
Whindmar Saksit [Sat, 24 Aug 2024 00:45:19 +0000 (02:45 +0200)]
[SHDOCVW] CNSCBand must specify a ShowWindow command (#7268)

2 weeks ago[REGEDIT] *.rc: Strip useless WS_VISIBLE STYLE from dlgs (#7251)
Joachim Henze [Fri, 23 Aug 2024 19:05:06 +0000 (21:05 +0200)]
[REGEDIT] *.rc: Strip useless WS_VISIBLE STYLE from dlgs (#7251)

360 matches, exactly 12 matches for each language, 30 languages.

This will not shrink the binary, it just shortens some long lines within the rc-sources.

3 weeks ago[RAPPS] Refreshing the Installed list should restore the selected item (#5676)
Whindmar Saksit [Thu, 22 Aug 2024 21:21:59 +0000 (23:21 +0200)]
[RAPPS] Refreshing the Installed list should restore the selected item (#5676)

3 weeks ago[SHELL32] Pass correct lParam to DFM_INVOKECOMMAND (#6765)
Whindmar Saksit [Thu, 22 Aug 2024 19:04:48 +0000 (21:04 +0200)]
[SHELL32] Pass correct lParam to DFM_INVOKECOMMAND (#6765)

3 weeks ago[SETUPLIB] SetupCreateDirectory(): Don't assume the form of the directory prefix... 7257/head
Hermès Bélusca-Maïto [Wed, 7 Aug 2024 20:31:01 +0000 (22:31 +0200)]
[SETUPLIB] SetupCreateDirectory(): Don't assume the form of the directory prefix (#7257)

Addendum to commit 32e6eed760 (r63715)
CORE-5982

The function assumed that the directory path name to be created
always starts with a harddisk-partition root device name of the form:

  \Device\HarddiskX\PartitionY\

Indeed, it can be (when using the volume manager) of the form:

  \Device\HarddiskVolumeN\

and could even have a different format if trying to install ReactOS
on an external removable drive or other weird device.

Since the format of this prefix is not 100% always the same,
a different way to create the sub-directories is needed.
The nested-directory creation algorithm is changed as follows:

Suppose that the directory to be created is:

  \Device\HarddiskVolume1\ReactOS\system32\drivers

The function first loops backwards each path component in order
to find the deepest existing sub-directory: it will try to verify
whether each of the following sub-directories exist, successively:

  \Device\HarddiskVolume1\ReactOS\system32\drivers
  \Device\HarddiskVolume1\ReactOS\system32\
  \Device\HarddiskVolume1\ReactOS\
  \Device\HarddiskVolume1\

(Notice the trailing path separators kept in this step.)
In principle, this root device FS directory must exist (since the
volume has been formatted previously). Once found, the function will
then create each of the sub-directories in turn:

  \Device\HarddiskVolume1\ReactOS
  \Device\HarddiskVolume1\ReactOS\system32
  \Device\HarddiskVolume1\ReactOS\system32\drivers

----

An alternative to the fix could be to always specify the root device
name in a separate parameter, but this hasn't been pursued here so as
to not modify all the callers of this function.

3 weeks ago[SETUPLIB] SetupCreateSingleDirectory(): Remove '\.' trailing sequence handling hack
Hermès Bélusca-Maïto [Thu, 22 Aug 2024 16:07:18 +0000 (18:07 +0200)]
[SETUPLIB] SetupCreateSingleDirectory(): Remove '\.' trailing sequence handling hack

It was introduced in commit 703eb5e8c9 (r7756) in order to hack around
the "dot"-path added in the reactos.dff generator file by the earlier
commit 3bd689f185 (r7269).
Its aim was to describe the installation directory itself, instead of
one of its sub-directories.

That _invalid_ "dot"-path was removed later by commit 027e2bfa3a (r15423);
however the '\.' hack stayed for quite a while in our code.

The correct way to describe the installation directory itself is to use
instead "\", compatible with Windows' setup, as was originally done in
txtsetup.sif, and fixed in reactos.dff(.in) in commit 97bb83fcd9 (r66604).

3 weeks ago[SHELL32] CDefaultContextMenu must forward the .lnk path (#7264)
Whindmar Saksit [Thu, 22 Aug 2024 12:34:22 +0000 (14:34 +0200)]
[SHELL32] CDefaultContextMenu must forward the .lnk path (#7264)

Forward the .lnk path (if any) so consrv gets STARTF_TITLEISLINKNAME and can apply console properties and icon from the shortcut.

3 weeks ago[CMAKE] Use COMPILE_OPTIONS instead of superseded COMPILE_FLAGS
Serge Gautherie [Mon, 3 Jun 2024 15:52:29 +0000 (17:52 +0200)]
[CMAKE] Use COMPILE_OPTIONS instead of superseded COMPILE_FLAGS

for set_source_files_properties().

3 weeks ago[TRANSLATION] Improve Italian (it-IT) translation part 2 (#7248)
Gabriele Lo Re [Tue, 20 Aug 2024 23:29:34 +0000 (01:29 +0200)]
[TRANSLATION] Improve Italian (it-IT) translation part 2 (#7248)

3 weeks ago[CRT] Fix prototype of _Strftime
Timo Kreuzer [Wed, 15 May 2024 10:17:40 +0000 (13:17 +0300)]
[CRT] Fix prototype of _Strftime

3 weeks ago[RAPPS] Improve Romanian (ro-RO) translation (#6858)
Andrei Miloiu [Mon, 19 Aug 2024 21:54:05 +0000 (00:54 +0300)]
[RAPPS] Improve Romanian (ro-RO) translation (#6858)