3 years ago[NTOSKRNL] Stubplement CcPinMappedData() and simplify CcPinRead()
Pierre Schweitzer [Sun, 26 Aug 2018 19:49:05 +0000 (21:49 +0200)]
[NTOSKRNL] Stubplement CcPinMappedData() and simplify CcPinRead()

It's based on the code that was in CcPinRead() implementation. This
made no sense to have CcPinMappedData() doing nothing while implementing
everything in CcPinRead(). Indeed, drivers (starting with MS drivers)
can map data first and pin it afterwards with CcPinMappedData(). It was
leading to incorrect behavior with our previous noop implementation.

3 years ago[SAMSRV] Simplify the initialization of the account expiration date for new user...
Eric Kohl [Sun, 26 Aug 2018 19:26:31 +0000 (21:26 +0200)]
[SAMSRV] Simplify the initialization of the account expiration date for new user accounts

3 years ago[NETAPI32] Add code to handle special values of the last logon time, last logoff...
Eric Kohl [Sun, 26 Aug 2018 19:06:32 +0000 (21:06 +0200)]
[NETAPI32] Add code to handle special values of the last logon time, last logoff time and account expiration time

3 years ago[USETUP] Progress-bar: Add support for displaying a custom progress text.
Hermès Bélusca-Maïto [Sun, 26 Aug 2018 18:40:34 +0000 (20:40 +0200)]
[USETUP] Progress-bar: Add support for displaying a custom progress text.

3 years ago[USETUP] Progress-bar: Code formatting, add annotations, don't use floats.
Hermès Bélusca-Maïto [Sun, 26 Aug 2018 18:31:14 +0000 (20:31 +0200)]
[USETUP] Progress-bar: Code formatting, add annotations, don't use floats.

3 years ago[USETUP] DrawProgressBar(): Draw the progress bar borders first, then draw its contents.
Hermès Bélusca-Maïto [Sun, 26 Aug 2018 14:41:43 +0000 (16:41 +0200)]
[USETUP] DrawProgressBar(): Draw the progress bar borders first, then draw its contents.

3 years ago[NET] Set the proper account expiration time (TIMEQ_FOREVER) when a new user account...
Eric Kohl [Sun, 26 Aug 2018 18:26:34 +0000 (20:26 +0200)]
[NET] Set the proper account expiration time (TIMEQ_FOREVER) when a new user account is created

3 years ago[SHELL32] Fix CShellLink::GetIconLocation (#810)
Katayama Hirofumi MZ [Sun, 26 Aug 2018 13:37:15 +0000 (22:37 +0900)]
[SHELL32] Fix CShellLink::GetIconLocation (#810)

Fixes a regression from PR #784.
CORE-14961, CORE-14009

3 years ago[NTOS:KE] Fix stub for KeAcquireInStackQueuedSpinLockForDpc (#814)
Denis Malikov [Sun, 26 Aug 2018 13:19:26 +0000 (20:19 +0700)]
[NTOS:KE] Fix stub for KeAcquireInStackQueuedSpinLockForDpc (#814)

Error was found when building as 0x600+.

3 years ago[NET] Add a date parser for the expires option of the net user command
Eric Kohl [Sat, 25 Aug 2018 22:13:14 +0000 (00:13 +0200)]
[NET] Add a date parser for the expires option of the net user command

3 years ago[NTOSKRNL] IopGetDeviceProperty: Initialize power data struct and convert flags from...
Eric Kohl [Sat, 25 Aug 2018 17:49:29 +0000 (19:49 +0200)]
[NTOSKRNL] IopGetDeviceProperty: Initialize power data struct and convert flags from device capabilities to power data

3 years ago[KMTESTS:FSRTL] Add tests for the FsRtlIsAnsiCharacter* macro
Pierre Schweitzer [Sat, 25 Aug 2018 12:23:45 +0000 (14:23 +0200)]
[KMTESTS:FSRTL] Add tests for the FsRtlIsAnsiCharacter* macro

This covers: FsRtlIsAnsiCharacterWild, FsRtlIsAnsiCharacterLegalFat, FsRtlIsAnsiCharacterLegalHpfs,
FsRtlIsAnsiCharacterLegalNtfs, FsRtlIsAnsiCharacterLegalNtfsStream

3 years ago[NTOSKRNL] Add the OLE flag where appropriate in FsRtlLegalAnsiCharacterArray
Pierre Schweitzer [Sat, 25 Aug 2018 12:01:54 +0000 (14:01 +0200)]
[NTOSKRNL] Add the OLE flag where appropriate in FsRtlLegalAnsiCharacterArray

This brings in the ability to check NTFS streams names (OLE | NTFS).
This fixes failing tests from previous commit.

3 years ago[KMTESTS:FSRTL] Add tests for FsRtlLegalAnsiCharacterArray
Pierre Schweitzer [Sat, 25 Aug 2018 11:56:33 +0000 (13:56 +0200)]
[KMTESTS:FSRTL] Add tests for FsRtlLegalAnsiCharacterArray

These are failing in ReactOS due to the lack of the OLE flag support.

3 years ago[WIN32SS][NTGDI] Extend PATH_FillPath as PATH_FillPathEx (#798)
Katayama Hirofumi MZ [Fri, 24 Aug 2018 11:37:59 +0000 (20:37 +0900)]
[WIN32SS][NTGDI] Extend PATH_FillPath as PATH_FillPathEx (#798)

The new PATH_FillPathEx function takes an additional PBRUSH parameter.

3 years ago[FONTS] Improve Tahoma font (14px bitmap and ligatures) (#809)
Katayama Hirofumi MZ [Fri, 24 Aug 2018 10:38:35 +0000 (19:38 +0900)]
[FONTS] Improve Tahoma font (14px bitmap and ligatures) (#809)

Add 14-pixel height bitmap, and improve some ligatures (fi and fl).

3 years ago[WIN32SS][LPK] Add BiDi support to menus and window captions (#738)
Baruch Rutman [Thu, 23 Aug 2018 17:43:12 +0000 (20:43 +0300)]
[WIN32SS][LPK] Add BiDi support to menus and window captions (#738)

Added callback function that redirects calls to GreExtTextOutW that didn't went through lpk BiDi processing, calls that are from the kernel.

Completely solves JIRA issue CORE-6910.

3 years ago[CONUTILS] In ConWrite(), emit an \r when a \n is encountered but not already precede...
Hermès Bélusca-Maïto [Thu, 23 Aug 2018 15:04:53 +0000 (17:04 +0200)]
[CONUTILS] In ConWrite(), emit an \r when a \n is encountered but not already preceded by \r.

And, don't emit \r\n when an \r alone is encountered.
This fixes the problem of extra newlines appearing when redirecting
"more" output to a file.


3 years ago[SDK] "0.4.11-dev" Starts here. 0.4.11-dev
Joachim Henze [Wed, 22 Aug 2018 23:22:43 +0000 (01:22 +0200)]
[SDK] "0.4.11-dev" Starts here.

tag will be added in next commit.

3 years ago[NFSD] [TELNET] Remove the hardcoded directory paths C:\ReactOS
Katayama Hirofumi MZ [Wed, 22 Aug 2018 17:40:11 +0000 (02:40 +0900)]
[NFSD] [TELNET] Remove the hardcoded directory paths C:\ReactOS


3 years ago[TRANSLATION][ZIPFLDR] Add Japanese translation (#799)
Katayama Hirofumi MZ [Wed, 22 Aug 2018 12:26:53 +0000 (21:26 +0900)]
[TRANSLATION][ZIPFLDR] Add Japanese translation (#799)


3 years ago[ADVAPI32_WINETEST] Restore service.c changes from 3c1b7834e1 694/head
Serge Gautherie [Sat, 21 Jul 2018 23:08:55 +0000 (01:08 +0200)]
[ADVAPI32_WINETEST] Restore service.c changes from 3c1b7834e1

This reverts commit a67df65c4f5337f14043709ae758361f0b0a3b31.
New failure was fixed by previous SERVICES commit.
Thus new timeout is avoided.


3 years ago[SERVICES] RChangeServiceConfig2A(): Zero-Initialize InfoW variable
Serge Gautherie [Sat, 21 Jul 2018 01:01:03 +0000 (03:01 +0200)]
[SERVICES] RChangeServiceConfig2A(): Zero-Initialize InfoW variable

This lets forward NULL Info.psd/Info.psd->lpDescription/Info.psfa,
instead of an uninitialized value.


3 years ago[FONTS] Update Hebrew font subtitutions (#795)
Baruch Rutman [Tue, 21 Aug 2018 15:21:21 +0000 (18:21 +0300)]
[FONTS] Update Hebrew font subtitutions (#795)

Updated the font substitutions to use the new Hebrew glyphs in the updated Tahoma font.
Also added substitution for the Ubuntu font to make the Lautus and Modern themes legible with Hebrew UI elements.

Follow up to PR #789 and #790 ; CORE-14880, CORE-14943

3 years ago[TRANSLATION][ZIPFLDR] Add Swedish translation (#794)
Andreas Bjerkeholt [Tue, 21 Aug 2018 14:57:01 +0000 (16:57 +0200)]
[TRANSLATION][ZIPFLDR] Add Swedish translation (#794)

3 years ago[USETUP] Implement CreateProgressBarEx() (#791)
Bișoc George [Tue, 21 Aug 2018 13:49:54 +0000 (15:49 +0200)]
[USETUP] Implement CreateProgressBarEx() (#791)

Improve the progress bar functions:
- Add a member in the struct, which will be used as a bar colour parameter for the new CreateProgressBarEx().
- CreateProgressBar() which will now invoke the Ex variant without the additional parameter.

3 years ago[CMAKE] MSVC_IDE: Enable 'unset(CMAKE_IMPORT_LIBRARY_SUFFIX)' 572/head
Serge Gautherie [Fri, 25 May 2018 10:59:47 +0000 (12:59 +0200)]

Resolve r67773 "# FIXME: Remove the MSVC_IDE condition when the upcoming RosBE lands.".

3 years ago[FONTS] Add Hebrew vector glyphs to Tahoma Bold font (#790)
Katayama Hirofumi MZ [Tue, 21 Aug 2018 13:35:52 +0000 (22:35 +0900)]
[FONTS] Add Hebrew vector glyphs to Tahoma Bold font (#790)

Bitmap glyphs are not added.

3 years ago[FONTS] Add Hebrew vector glyphs to Tahoma font (#789)
Katayama Hirofumi MZ [Tue, 21 Aug 2018 13:35:18 +0000 (22:35 +0900)]
[FONTS] Add Hebrew vector glyphs to Tahoma font (#789)

Bitmap glyphs are not added.

3 years ago[MSHTML] Fix 3 MSVC warnings about HTML*Element_handle_event() 688/head
Serge Gautherie [Wed, 18 Jul 2018 13:00:22 +0000 (15:00 +0200)]
[MSHTML] Fix 3 MSVC warnings about HTML*Element_handle_event()

- "...\htmlanchor.c(769) : warning C4028: formal parameter 2 different from declaration"
- "...\htmlarea.c(427) : warning C4028: formal parameter 2 different from declaration"
- "...\htmlform.c(757) : warning C4028: formal parameter 2 different from declaration"

Cherry-pick Jacek Caban

3 years ago[CMD] Add missing memory allocation NULL checks (#161). CORE-8304 161/head
Hermès Bélusca-Maïto [Sun, 3 Dec 2017 17:49:41 +0000 (18:49 +0100)]
[CMD] Add missing memory allocation NULL checks (#161). CORE-8304

Adapted from a patch by Jacob S. Preciado.

Bring also the code suggestions emitted during review.

3 years ago[SHELL32] Enable to change shortcut icon (#784)
Katayama Hirofumi MZ [Tue, 21 Aug 2018 11:49:32 +0000 (20:49 +0900)]
[SHELL32] Enable to change shortcut icon (#784)


3 years ago[BROWSEUI] Show Tooltip text for 'Go' Button 786/head
Robert Naumann [Tue, 21 Aug 2018 08:05:50 +0000 (10:05 +0200)]
[BROWSEUI] Show Tooltip text for 'Go' Button
-Patch by Barret Karish CORE-11058

3 years agoAddendum to 45fd48b
Pierre Schweitzer [Tue, 21 Aug 2018 10:41:50 +0000 (12:41 +0200)]
Addendum to 45fd48b

3 years ago[CDFS_NEW] -> [CDFS] No old driver, thus no new driver
Pierre Schweitzer [Tue, 21 Aug 2018 10:32:15 +0000 (12:32 +0200)]
[CDFS_NEW] -> [CDFS] No old driver, thus no new driver

3 years ago[CDFS] Delete the old CDFS driver.
Pierre Schweitzer [Tue, 21 Aug 2018 10:27:35 +0000 (12:27 +0200)]
[CDFS] Delete the old CDFS driver.

You served us well!

3 years ago[ZIPFLDR] Enable / disable the correct wizard buttons 788/head
Andreas Bjerkeholt [Tue, 21 Aug 2018 09:14:14 +0000 (11:14 +0200)]
[ZIPFLDR] Enable / disable the correct wizard buttons

3 years ago[NTOS:Mm] Fix a 64 bit issue in MmMapViewOfArm3Section (#778)
Timo Kreuzer [Tue, 21 Aug 2018 09:25:22 +0000 (11:25 +0200)]
[NTOS:Mm] Fix a 64 bit issue in MmMapViewOfArm3Section (#778)

Fixes a Clang-Cl warning

3 years ago[NTOS] Fix MiFindInitializationCode (#751)
Timo Kreuzer [Tue, 21 Aug 2018 08:35:57 +0000 (10:35 +0200)]
[NTOS] Fix MiFindInitializationCode (#751)

Short: The code was suffering from an off-by-one bug (inconsistency between inclusive end exclusive end address), which could lead to freeing one page above the initialization code. This led to freeing part of the kernel import section on x64. Now it is consistently using the aligned/exclusive end address.

* Initialization sections are freed both for the boot loaded images as well as for drivers that are loaded later. Obviously the second mechanism needs to be able to run at any time, so it is not initialization code itself. For some reason someone decided though, it would be a smart idea to implement the code twice, once for the boot loaded images, once for drivers and concluding that the former was initialization code itself and had to be freed.
* Since freeing the code that frees the initialization sections, while it is doing that is not possible, it uses a "smart trick", initially skipping that range, returning its start and end to the caller and have the caller free it afterwards.
* The code was using the end address in an inconsistent way, partly aligning it to the start of the following section, sometimes pointing to the last byte that should be freed. The function that freed each chunk was assuming the latter (i.e. that the end was included in the range) and thus freed the page that contained the end address. The end address for the range that was returned to the caller was aligned to the start of the next section, and the caller used it to free the range including the following page. On x64 this was the start of the import section of ntoskrnl. How that worked on x86 I don't even want to know.

3 years ago[FASTFAT] Drop an useless #ifdef, we have this cast in all other FSDs
Pierre Schweitzer [Tue, 21 Aug 2018 06:50:29 +0000 (08:50 +0200)]
[FASTFAT] Drop an useless #ifdef, we have this cast in all other FSDs

3 years ago[FASTFAT] Finally drop the TAG_VFAT allocation tag
Pierre Schweitzer [Tue, 21 Aug 2018 06:36:51 +0000 (08:36 +0200)]
[FASTFAT] Finally drop the TAG_VFAT allocation tag

3 years ago[BTRFS] Fix booting with runtime checks
Mark Jansen [Tue, 21 Aug 2018 05:05:40 +0000 (07:05 +0200)]
[BTRFS] Fix booting with runtime checks

3 years ago[NTOS:MM] Fix ASSERT when expanding paged pool
Timo Kreuzer [Mon, 20 Aug 2018 21:52:42 +0000 (23:52 +0200)]
[NTOS:MM] Fix ASSERT when expanding paged pool

The page directory is double mapped on x86 in the system process, so writing to it will already write to the PDE.

3 years ago[SYSSETUP] Fix handling of the status message window
Timo Kreuzer [Sat, 17 Mar 2018 13:23:34 +0000 (14:23 +0100)]
[SYSSETUP] Fix handling of the status message window

This fixes a race condition, where the message thread was still running when InstallReactOS returned and syssetup.dll was unloaded by the caller (setup.exe).

3 years agoAdd a quick statement about BtrFS :-)
Pierre Schweitzer [Mon, 20 Aug 2018 18:26:16 +0000 (20:26 +0200)]
Add a quick statement about BtrFS :-)

3 years ago[FASTFAT] Disable delayed close
Pierre Schweitzer [Mon, 20 Aug 2018 17:43:43 +0000 (19:43 +0200)]
[FASTFAT] Disable delayed close

It brings too many regressions for too little gain.


3 years ago[MSHTML] Fix an MSVC warning about HTMLInputElementImpl_fire_event()
Serge Gautherie [Wed, 18 Jul 2018 14:07:57 +0000 (16:07 +0200)]
[MSHTML] Fix an MSVC warning about HTMLInputElementImpl_fire_event()

"...\htmlinput.c(1303) : warning C4028: formal parameter 2 different from declaration"

Temporary fix, until WINESYNC replaces this function.

3 years ago[NTOS:MM] Fix paged pool expansion
Timo Kreuzer [Sun, 4 Feb 2018 18:20:56 +0000 (19:20 +0100)]
[NTOS:MM] Fix paged pool expansion

3 years ago[TRANSLATION] Polish translation update (#781)
Adam Słaboń [Mon, 20 Aug 2018 15:00:33 +0000 (17:00 +0200)]
[TRANSLATION] Polish translation update (#781)

In addition: fix the encoding of the comdlg32 and ntvdm polish resource files.

3 years ago[GDI32][APITESTS] Add GetGlyphOutline testcase (#776)
Katayama Hirofumi MZ [Mon, 20 Aug 2018 14:31:32 +0000 (23:31 +0900)]
[GDI32][APITESTS] Add GetGlyphOutline testcase (#776)


3 years ago[BOOTDATA] Improve 'Open With' registry information (#586)
Katayama Hirofumi MZ [Mon, 20 Aug 2018 14:14:18 +0000 (23:14 +0900)]
[BOOTDATA] Improve 'Open With' registry information (#586)

* use ""%1""
* double-quoted %1
* remove doubled quotes with rundll32

3 years ago[MODERN.MSSTYLES] Add the initial version of the modern theme. 698/head
Jake Collins [Sun, 22 Jul 2018 17:24:27 +0000 (18:24 +0100)]
[MODERN.MSSTYLES] Add the initial version of the modern theme.

3 years ago[BTRFSTOOLS] Added python scripts for inspecting BTRFS filesystem
Victor Perevertkin [Tue, 14 Aug 2018 14:51:03 +0000 (17:51 +0300)]
[BTRFSTOOLS] Added python scripts for inspecting BTRFS filesystem

3 years ago[BTRFS] Applied upstream pull-requests before they are merged
Victor Perevertkin [Sun, 12 Aug 2018 16:31:15 +0000 (19:31 +0300)]
[BTRFS] Applied upstream pull-requests before they are merged

3 years ago[FREELDR][BTRFS] Implemented BTRFS support in Free Loader. Now it supports case-insen...
Victor Perevertkin [Tue, 19 Jun 2018 01:00:52 +0000 (04:00 +0300)]
[FREELDR][BTRFS] Implemented BTRFS support in Free Loader. Now it supports case-insensitive path lookup, symlink folowing and reading uncompressed files.
Volume boot record is also implemented, it supports reading BTRFS tree structures with upto 64k node size.
This support required to change all path in Free Loader to lowercase for better performance.

3 years ago[USETUP][SETUPLIB] Added support for formatting partition in BTRFS and installing...
Victor Perevertkin [Wed, 13 Jun 2018 23:30:06 +0000 (02:30 +0300)]
[USETUP][SETUPLIB] Added support for formatting partition in BTRFS and installing ReactOS on it.
Removed code related to EXT2 boot sector for now.

3 years ago[UMPNPMGR] Simplify PNP_GetDeviceRegProp
Eric Kohl [Sun, 19 Aug 2018 22:55:03 +0000 (00:55 +0200)]
[UMPNPMGR] Simplify PNP_GetDeviceRegProp

3 years ago[SETUPAPI] SetupDiGetDeviceRegistryPropertyW call CM_Get_DevNode_Registry_Property_Ex...
Eric Kohl [Sun, 19 Aug 2018 22:15:26 +0000 (00:15 +0200)]
[SETUPAPI] SetupDiGetDeviceRegistryPropertyW call CM_Get_DevNode_Registry_Property_ExW for properties that can not be retrieved from the registry

3 years ago[FONT][WIN32SS] Refactor the loop (1 of 5)
Katayama Hirofumi MZ [Sun, 19 Aug 2018 21:08:38 +0000 (06:08 +0900)]
[FONT][WIN32SS] Refactor the loop (1 of 5)

3 years ago[FONT][WIN32SS] Refactor the loop (2 of 5)
Katayama Hirofumi MZ [Sun, 19 Aug 2018 04:36:31 +0000 (13:36 +0900)]
[FONT][WIN32SS] Refactor the loop (2 of 5)

3 years ago[FONT][WIN32SS] Refactor the loop (4 of 5)
Katayama Hirofumi MZ [Sun, 19 Aug 2018 04:38:06 +0000 (13:38 +0900)]
[FONT][WIN32SS] Refactor the loop (4 of 5)

3 years ago[FONT][WIN32SS] Refactor the loop (5 of 5)
Katayama Hirofumi MZ [Sun, 19 Aug 2018 04:39:02 +0000 (13:39 +0900)]
[FONT][WIN32SS] Refactor the loop (5 of 5)

3 years ago[FONT][WIN32SS] Refactor the loop (3 of 5)
Katayama Hirofumi MZ [Sun, 19 Aug 2018 04:37:18 +0000 (13:37 +0900)]
[FONT][WIN32SS] Refactor the loop (3 of 5)

3 years ago[TRANSLATION] Polish translation of (0-499) (#777)
Timo Kreuzer [Sun, 19 Aug 2018 20:46:51 +0000 (22:46 +0200)]
[TRANSLATION] Polish translation of (0-499) (#777)

3 years ago[GDI32_APITEST] Remove broken EngDeleteSemaphore.c (#655)
Serge Gautherie [Sun, 19 Aug 2018 20:33:56 +0000 (22:33 +0200)]
[GDI32_APITEST] Remove broken EngDeleteSemaphore.c (#655)

- Checks are actually uses-after-free, "by design" :-<
- Actual test code duplicates EngCreateSemaphore.c, EngAcquireSemaphore.c and EngReleaseSemaphore.c.

3 years ago[WIN32K:NTUSER] In UserSetProcessWindowStation(), use a duplicated window station... 621/head
Hermès Bélusca-Maïto [Sun, 22 Jul 2018 23:17:14 +0000 (01:17 +0200)]
[WIN32K:NTUSER] In UserSetProcessWindowStation(), use a duplicated window station handle to be set in the EPROCESS:Win32WindowStation cache.

Fixes most of the user32:desktop window station handle reference count tests.

3 years ago[WIN32K:NTUSER] For processes that start without any window station and no desktops...
Hermès Bélusca-Maïto [Sun, 22 Jul 2018 22:15:23 +0000 (00:15 +0200)]
[WIN32K:NTUSER] For processes that start without any window station and no desktops but manage these (e.g. winlogon.exe), assign their startup desktop when they assign a desktop to one of their threads.

3 years ago[WIN32K:NTUSER] Add a temporary winsta/desktop-connection hack for CSRSS/USERSRV...
Hermès Bélusca-Maïto [Sun, 22 Jul 2018 21:11:00 +0000 (23:11 +0200)]
[WIN32K:NTUSER] Add a temporary winsta/desktop-connection hack for CSRSS/USERSRV (connection to WinSta0).

Normally CSRSS must not be connected to any winsta or desktop by default. It should manually connect
to a winsta/desktop only when it has to do some GUI operations, and then disconnect afterwards.

[USERSRV] Temporarily hackfix the harderror dialog display to the current input desktop.

Hermès Bélusca-Maïto [Sun, 22 Jul 2018 18:45:16 +0000 (20:45 +0200)]
as documented in "Advanced Windows NT" by Jeffrey M. Richter (Microsoft Press),
and in .

for the STARTUPINFO::dwFlags structure member, whose purpose is to tell Win32k
that the created handles to the window station and desktop to which the
process is connecting to, can be inherited by its child processes.
It is used when starting interactive services.
Observed via API monitoring on Windows 2003.

3 years ago[WIN32K:NTUSER] NtUserCloseDesktop(): Use ObCloseHandle instead.
Hermès Bélusca-Maïto [Sun, 22 Jul 2018 18:38:46 +0000 (20:38 +0200)]
[WIN32K:NTUSER] NtUserCloseDesktop(): Use ObCloseHandle instead.

3 years ago[WIN32K:NTUSER] Make NtUserResolveDesktop() and IntResolveDesktop() work in a more...
Hermès Bélusca-Maïto [Sun, 22 Jul 2018 18:38:26 +0000 (20:38 +0200)]
[WIN32K:NTUSER] Make NtUserResolveDesktop() and IntResolveDesktop() work in a more Win2k3-compatible manner.
CORE-11933 and PR #621.

Since this API is also called from WINSRV when calling the AllocConsole() API,
it can be tested more-or-less easily. The internal helper IntResolveDesktop()
is also tested during process connection to a window station, when such process
first calls a USER32 or GDI32 function.
This is also the functionality tested by the user32:desktop apitest.

- Adjust how IntResolveDesktop() is called.

3 years ago[WIN32K:NTUSER] Code style fixes only.
Hermès Bélusca-Maïto [Sun, 22 Jul 2018 18:32:12 +0000 (20:32 +0200)]
[WIN32K:NTUSER] Code style fixes only.

3 years ago[WIN32K:NTUSER] Rename some variables with more natural names.
Hermès Bélusca-Maïto [Sun, 22 Jul 2018 18:30:05 +0000 (20:30 +0200)]
[WIN32K:NTUSER] Rename some variables with more natural names.

3 years ago[WIN32K:NTUSER] Split NtUserCreateDesktop() into the part that captures the user...
Hermès Bélusca-Maïto [Sun, 22 Jul 2018 18:27:33 +0000 (20:27 +0200)]
[WIN32K:NTUSER] Split NtUserCreateDesktop() into the part that captures the user-mode data and the internal worker IntCreateDesktop() function, which will also be used later.

3 years ago[WIN32K:NTUSER] Fixes for NtUserCreateWindowStation(), IntCreateWindowStation() and...
Hermès Bélusca-Maïto [Sun, 22 Jul 2018 18:22:49 +0000 (20:22 +0200)]
[WIN32K:NTUSER] Fixes for NtUserCreateWindowStation(), IntCreateWindowStation() and NtUserOpenWindowStation().
CORE-11933 and PR #621.

We are potentially going to modify the window station name to be
created or opened, by one with the format "Service-0x<luidhigh>-<luidlow>$",
in case the user provides an empty name.
Since we want to use the user-mode ObjectAttributes structure pointer so
that the Object manager can correctly perform the access checks and the
capture, we actually need to construct the new window station name in the
user memory space! This allows us then to fetch the new name in the
ObjectAttributes structure so that Ob can use it.
All of this is performed under SEH.

For NtUserOpenWindowStation(), we also need to be Windows-compatible and
detect whether user-mode gave instead the special "Service-0x00000000-00000000$"
name (observed via API monitoring) that is used when one tries to open a
window station with empty name.

3 years ago[WIN32K:NTUSER] Similarly to what was done in USERSRV for harderrors, introduce the...
Hermès Bélusca-Maïto [Mon, 16 Jul 2018 23:47:59 +0000 (01:47 +0200)]
[WIN32K:NTUSER] Similarly to what was done in USERSRV for harderrors, introduce the _scwprintf() helper function based on the imported _vscwprintf().

3 years ago[WIN32K:NTUSER] Get rid of the cached window station Name member, and instead just...
Hermès Bélusca-Maïto [Sun, 17 Jun 2018 17:40:32 +0000 (19:40 +0200)]
[WIN32K:NTUSER] Get rid of the cached window station Name member, and instead just use the name stored in the NT Object's header.
CORE-11933 and PR #621.

- Remove the related hack-FIXMEs;
- Adjust NtUserGetObjectInformation() in accordance.
- Retrieve the window-station/desktop object type string in NtUserGetObjectInformation()
  also from the NT Object's header.

Also simplify the UOI_FLAGS case of NtUserGetObjectInformation() by reading
the handle inheritance information directly from the OBJECT_HANDLE_INFORMATION
structure returned by ObReferenceObjectByHandle().

3 years ago[WIN32K:NTUSER] Detect when the NtUserCreateWindowStation() caller has provided an...
Hermès Bélusca-Maïto [Sat, 16 Jun 2018 17:45:20 +0000 (19:45 +0200)]
[WIN32K:NTUSER] Detect when the NtUserCreateWindowStation() caller has provided an empty window station name, and if so, generate a name in the format: "Service-0x<luidhigh>-<luidlow>$" .

CORE-11933 and PR #621.

3 years ago[WIN32K:NTUSER] Split NtUserCreateWindowStation() into the part that captures the...
Hermès Bélusca-Maïto [Sat, 16 Jun 2018 17:45:07 +0000 (19:45 +0200)]
[WIN32K:NTUSER] Split NtUserCreateWindowStation() into the part that captures the user-mode data and the internal worker IntCreateWindowStation() function, which will also be used later.

Add a FIXME note about how we currently handle the window station name.

3 years ago[WIN32K:NTUSER] In UserCreateWinstaDirectory(), use a string-safe printf, and use...
Hermès Bélusca-Maïto [Sat, 16 Jun 2018 17:44:56 +0000 (19:44 +0200)]
[WIN32K:NTUSER] In UserCreateWinstaDirectory(), use a string-safe printf, and use OBJ_KERNEL_HANDLE as well as a suitable desired access value in a ZwCreateDirectoryObject() call.

3 years ago[WIN32K:NTUSER] Add an extra optional "Process" parameter to the GetProcessLuid(...
Hermès Bélusca-Maïto [Sat, 16 Jun 2018 17:44:27 +0000 (19:44 +0200)]
[WIN32K:NTUSER] Add an extra optional "Process" parameter to the GetProcessLuid() function to be used alternatively in place of "Thread" to retrieve the LUID.

3 years ago[WIN32K:NTUSER] Move the GetProcessLuid() function to the miscellaneous module.
Hermès Bélusca-Maïto [Sat, 16 Jun 2018 17:44:15 +0000 (19:44 +0200)]
[WIN32K:NTUSER] Move the GetProcessLuid() function to the miscellaneous module.

3 years ago[USER32] Implement the special case in CreateWindowStationW() that, when no window...
Hermès Bélusca-Maïto [Sat, 16 Jun 2018 17:43:59 +0000 (19:43 +0200)]
[USER32] Implement the special case in CreateWindowStationW() that, when no window station name is provided (either NULL or empty string), does not open any WindowStation directory handle to be passed to the Win32k function.

Observed via API monitoring.
This corresponds to the case where Win32k creates a window station whose name is based on the logon session identifier for the calling process.

Add also a note about the fact that we need to use a per-session-based WindowStation directory name, as done already in Win32k.

CORE-11933 and PR #621.

3 years agoCORE-14513 [CMAKE] Remove modules that are shipped with cmake (#575)
Andrew Cook [Sun, 19 Aug 2018 20:01:31 +0000 (06:01 +1000)]
CORE-14513 [CMAKE] Remove modules that are shipped with cmake (#575)

* Remove unused cmake modules - Both are unedited versions of modules provided by cmake itself
* Remove Compiler/GNU.cmake - Only chang was various _INIT flags, which are handled
* Remove Platform/Windows.cmake - There's no clear explination for this file being in reactos
and is simply an old version of the one in cmake
* Remove Platform/Windows-MSVC.cmake - _INIT variable changes moved to overrides-msvc.cmake
Remove /implib from link commands
* Remove CMakeDetermineASMCompiler.cmake - Only change from 3.2 is the addition of a compiler list for the generic ASM dialect, but toolchain files explicitly set a compiler so the list is never used

3 years ago[OSK] Some enhancements for locales IT and RO (#416)
Bișoc George [Sun, 19 Aug 2018 19:42:57 +0000 (21:42 +0200)]
[OSK] Some enhancements for locales IT and RO (#416)

* Window element improvements for Italian and Romanian

3 years ago[OSK] Rearrange window elements for ru-RU and en-US locales (#412)
Petr Akhlamov [Sun, 19 Aug 2018 19:40:58 +0000 (22:40 +0300)]
[OSK] Rearrange window elements for ru-RU and en-US locales (#412)

* Resize osk window at RU and EN(US) languages

3 years ago[NETSHELL] Update French translation to reflect 0725098
Pierre Schweitzer [Sun, 19 Aug 2018 18:50:55 +0000 (20:50 +0200)]
[NETSHELL] Update French translation to reflect 0725098

3 years ago[NTOS:EX] Implement SystemFirmwareTableInformation class
Stanislav Motylkov [Sun, 5 Aug 2018 13:39:51 +0000 (16:39 +0300)]
[NTOS:EX] Implement SystemFirmwareTableInformation class

3 years ago[KERNEL32] Implement system firmware functions properly
Stanislav Motylkov [Sun, 5 Aug 2018 08:48:25 +0000 (11:48 +0300)]
[KERNEL32] Implement system firmware functions properly

3 years ago[KERNEL32_APITEST] Add SystemFirmwareTableInformation tests
Stanislav Motylkov [Sun, 5 Aug 2018 08:38:20 +0000 (11:38 +0300)]
[KERNEL32_APITEST] Add SystemFirmwareTableInformation tests

Thanks goes to Mark Jansen for help!

3 years ago[APPVEYOR] Add 'BuildType: vssolution'
Serge Gautherie [Thu, 24 May 2018 20:00:01 +0000 (22:00 +0200)]
[APPVEYOR] Add 'BuildType: vssolution'

Disabled by default, though ready to be enabled.

3 years ago[UPDATES] New stubs for Automatic Updates service and WUSA.exe. Presence of this...
Denis Malikov [Fri, 2 Feb 2018 22:03:17 +0000 (05:03 +0700)]
[UPDATES] New stubs for Automatic Updates service and WUSA.exe. Presence of this modules required for installation by some NT6+ applications.

3 years ago[SDK][Translation] Polish translation update (#495)
Paweł Cholewa [Sun, 19 Aug 2018 17:47:26 +0000 (19:47 +0200)]
[SDK][Translation] Polish translation update (#495)

* Polish translation update in

3 years ago[LOG2LINES] Enforce "Iso" type when unpacking the Iso file
Serge Gautherie [Sat, 23 Jun 2018 22:57:57 +0000 (00:57 +0200)]
[LOG2LINES] Enforce "Iso" type when unpacking the Iso file

Work around some "7z" dealing with files not named "*.iso" as "Cab" type.
Issue at least with "7-Zip [64]  9.20" on "Ubuntu 16.04".


3 years ago[ATL_APITEST] Add test for CComQIPtr (or rather, our gcc hack that slightly looks...
Mark Jansen [Sun, 5 Aug 2018 09:50:02 +0000 (11:50 +0200)]
[ATL_APITEST] Add test for CComQIPtr (or rather, our gcc hack that slightly looks like it)

3 years ago[ATL] Improve the order of operations in CComPtr and CComQIIDPtr
Mark Jansen [Sun, 5 Aug 2018 09:48:31 +0000 (11:48 +0200)]
[ATL] Improve the order of operations in CComPtr and CComQIIDPtr

3 years ago[WSHOM.OCX] Zero-initialize timeout and type if they are not set.
EUPHORIA-IT\m.jansen [Sun, 19 Aug 2018 14:13:55 +0000 (16:13 +0200)]
[WSHOM.OCX] Zero-initialize timeout and type if they are not set.
This should fix buildbot timeouts

3 years ago[SYSSETUP] SetupStartService: Remove the wait loop
Eric Kohl [Sun, 19 Aug 2018 12:31:43 +0000 (14:31 +0200)]
[SYSSETUP] SetupStartService: Remove the wait loop


3 years ago[NTDLL][NTUSER] Fix unselected text after WM_CBLOSTTEXTFOCUS
Manuel Bachmann [Thu, 2 Nov 2017 01:06:50 +0000 (02:06 +0100)]
[NTDLL][NTUSER] Fix unselected text after WM_CBLOSTTEXTFOCUS

When we unselect text after the WM_CBLOSTTEXTFOCUS message,
make sure we also forget we have been focused at all;
otherwise the edit may become focused again, but with an
empty text selection.


3 years ago[WINED3D] Yield CPU to the scheduler in wined3d_pause. CORE-14637 CORE-14534
Thomas Faber [Sun, 19 Aug 2018 11:28:06 +0000 (13:28 +0200)]
[WINED3D] Yield CPU to the scheduler in wined3d_pause. CORE-14637 CORE-14534

Much like the previous commit, this is a workaround for our buggy Win32k.