2 years ago[MOUNTMGR] Properly validate input buffer size
Pierre Schweitzer [Thu, 5 Sep 2019 06:22:59 +0000 (08:22 +0200)]
[MOUNTMGR] Properly validate input buffer size

This avoids IOCTL_MOUNTMGR_QUERY_POINTS always failing

2 years ago[MOUNTMGR] Fix global symbolic link creations
Pierre Schweitzer [Wed, 4 Sep 2019 21:47:26 +0000 (23:47 +0200)]
[MOUNTMGR] Fix global symbolic link creations

They were wrongly pointing to the original target once rewritten
instead of pointing to the proper target: the device.

This notably fixes opening the MountMgr device from user
mode (to perform IOCTL calls, for instance), and might
also fix various bugs dealing with global namespaces.
This might have some various effects in ReactOS~.

2 years ago[Win32SS|Eng] Update stubs.
jimtabor [Wed, 4 Sep 2019 18:09:34 +0000 (13:09 -0500)]
[Win32SS|Eng] Update stubs.

These functions are no longer support for UMPD.

2 years ago[TXTSETUP] Revert an accidental change
Victor Perevertkin [Wed, 4 Sep 2019 14:54:00 +0000 (17:54 +0300)]
[TXTSETUP] Revert an accidental change

2 years ago[USBHUB_NEW] Enable generic USB hubs (USB class 09)
Victor Perevertkin [Wed, 4 Sep 2019 02:26:02 +0000 (05:26 +0300)]
[USBHUB_NEW] Enable generic USB hubs (USB class 09)
They actually work, tested on a couple of real devices

2 years ago[Win32SS] Fix safe pointer and define type.
jimtabor [Tue, 3 Sep 2019 20:02:46 +0000 (15:02 -0500)]
[Win32SS] Fix safe pointer and define type.

2 years ago[Win32SS] Implement EngCreate/DeletePalette.
jimtabor [Tue, 3 Sep 2019 19:36:20 +0000 (14:36 -0500)]
[Win32SS] Implement EngCreate/DeletePalette.

Safe to be called from user side without UMPD support.

2 years ago[BTRFS] Fix fileinfo.c build
Pierre Schweitzer [Mon, 2 Sep 2019 20:17:17 +0000 (22:17 +0200)]
[BTRFS] Fix fileinfo.c build

2 years ago[BTRFS] Fix create.c build
Pierre Schweitzer [Mon, 2 Sep 2019 20:02:45 +0000 (22:02 +0200)]
[BTRFS] Fix create.c build

2 years ago[BTRFS] Fix dirctl.c build
Pierre Schweitzer [Mon, 2 Sep 2019 19:48:54 +0000 (21:48 +0200)]
[BTRFS] Fix dirctl.c build

2 years ago[UBTRFS] Upgrade to 1.4
Pierre Schweitzer [Mon, 2 Sep 2019 06:18:48 +0000 (08:18 +0200)]
[UBTRFS] Upgrade to 1.4


2 years ago[BTRFS] Upgrade to 1.4
Pierre Schweitzer [Sun, 1 Sep 2019 12:53:20 +0000 (14:53 +0200)]
[BTRFS] Upgrade to 1.4


2 years ago[CRT] Import stdbool.h from CLANG
Pierre Schweitzer [Sun, 1 Sep 2019 12:52:04 +0000 (14:52 +0200)]
[CRT] Import stdbool.h from CLANG


2 years agoMerge pull request #1889 from Doug-Lyons/find_regression_test
Doug Lyons [Sun, 1 Sep 2019 21:03:16 +0000 (16:03 -0500)]
Merge pull request #1889 from Doug-Lyons/find_regression_test

Add Regression test for "find" using BAT with Conditionals "&&" and "||"

2 years ago[XBOXVMP] Improve debugging prints
Stanislav Motylkov [Sun, 1 Sep 2019 19:44:24 +0000 (22:44 +0300)]
[XBOXVMP] Improve debugging prints

2 years ago[XBOXVMP] Code formatting only
Stanislav Motylkov [Sun, 1 Sep 2019 19:30:09 +0000 (22:30 +0300)]
[XBOXVMP] Code formatting only

2 years ago[BOOTVID] Refactor font data from i386 and arm bootdata.c (#1891)
Stanislav Motylkov [Sun, 1 Sep 2019 21:01:40 +0000 (00:01 +0300)]
[BOOTVID] Refactor font data from i386 and arm bootdata.c (#1891)

2 years ago[CPL] Do not enable the "Apply" button unconditionally (#1876)
Bișoc George [Sun, 1 Sep 2019 20:58:43 +0000 (22:58 +0200)]
[CPL] Do not enable the "Apply" button unconditionally (#1876)


2 years ago[SYSDM] Only Administrators should see all user profiles and be able to copy or delet...
Eric Kohl [Sun, 1 Sep 2019 17:35:15 +0000 (19:35 +0200)]
[SYSDM] Only Administrators should see all user profiles and be able to copy or delete them

2 years ago[HAL] Return correct bus handler in HaliFindBusAddressTranslation
Stanislav Motylkov [Sun, 1 Sep 2019 10:04:15 +0000 (13:04 +0300)]
[HAL] Return correct bus handler in HaliFindBusAddressTranslation

This fixes the bug when VidInitialize asks for different translated addresses
and VgaIsPresent always returns FALSE either because the machine does not have
VGA controller at all (e.g. 86Duino Zero), or it does have video hardware
that is not compatible with VGA standard (e.g. Original Xbox).

The problem investigated by Stanislav Motylkov. Suggested fix by Thomas Faber.

CORE-14625 CORE-16216 CORE-16222

Co-authored-by: Thomas Faber <>
2 years ago[CRT][MSVCRT] Add __DestructExceptionObject from wine
Timo Kreuzer [Fri, 23 Aug 2019 10:08:00 +0000 (12:08 +0200)]
[CRT][MSVCRT] Add __DestructExceptionObject from wine

2 years agoRevert "[CABMAN] Fix a problem with creating temp files on some Windows system"
Timo Kreuzer [Sun, 1 Sep 2019 14:23:17 +0000 (16:23 +0200)]
Revert "[CABMAN] Fix a problem with creating temp files on some Windows system"

This reverts commit bcb0d7c6c9f5577a64e5abdc3c1cedd95eeff6a3.

2 years ago[NTOS:MM] Fix MmspCompareSegments
Timo Kreuzer [Mon, 15 Apr 2019 21:22:01 +0000 (23:22 +0200)]
[NTOS:MM] Fix MmspCompareSegments

On x64 the previous implementation would only compare the upper 32 bits and ignore the lower 32 bits.

2 years ago[FIND] Return from the utility the success value from the FindString() function in...
Doug Lyons [Sat, 31 Aug 2019 16:34:20 +0000 (18:34 +0200)]
[FIND] Return from the utility the success value from the FindString() function in all cases.

Therefore the ERRORLEVEL value will be correctly set in accordance on
return from the utility in cmd.exe, and conditional tests based on this
returned value will succeed as they should.

2 years ago[BOOTDATA] Add missing descriptions for the wuauserv service
Eric Kohl [Sat, 31 Aug 2019 16:19:53 +0000 (18:19 +0200)]
[BOOTDATA] Add missing descriptions for the wuauserv service

2 years ago[BOOTDATA][LSASRV] Add the security service(s)
Eric Kohl [Sat, 31 Aug 2019 16:17:14 +0000 (18:17 +0200)]
[BOOTDATA][LSASRV] Add the security service(s)

- Add the service routines for the SamSs service.
- Start the SamSs service.

2 years ago[SERVICES][ADVAPI32] Support the security process aka lsass.exe
Eric Kohl [Sat, 31 Aug 2019 15:24:47 +0000 (17:24 +0200)]
[SERVICES][ADVAPI32] Support the security process aka lsass.exe

- Reserve the pipe NtControlPipe0 for the security process.
- Count regular service control pipes from 1.
- Use I_ScIsSecurityProcess to identify the security process.
- Services.exe uses the SECURITY_SERVICES_STARTED event to notify the security process that NtControlPipe0 is ready for use.

2 years ago[NETAPI32] Implement DsEnumerateDomainTrustsA
Eric Kohl [Sat, 31 Aug 2019 10:45:30 +0000 (12:45 +0200)]
[NETAPI32] Implement DsEnumerateDomainTrustsA

2 years ago[FREELDR] Code fixes and enhancements.
Hermès Bélusca-Maïto [Fri, 30 Aug 2019 22:49:37 +0000 (00:49 +0200)]
[FREELDR] Code fixes and enhancements.


- Fix parsing of the multiboot options string.
  NOTE: They are not yet treated in a case-insensitive manner!

- Fix a bug in ArcOpen() so that it correctly skips the first path
  separator (after the adapter-controller-peripheral ARC descriptors).
  The path separator can be either a backslash or a slash (both are
  allowed according to the specs); they were also already handled
  correctly in other parts of the code.

- Fix DissectArcPath() so as to:
  * **OPTIONALLY** (and not mandatorily!) return the path part that follows
    the ARC adapter-controller-peripheral elements in the ARC path;

  * make it correctly handle the (yes, optional!!) partition() part in the
    ARC path, for the multi(x)disk(y)rdisk(z) cases.


- Directly retrieve the default OS entry as we enumerate them and
  build their list (i.e. merge the GetDefaultOperatingSystem() helper
  within InitOperatingSystemList()).

- Directly use the opened 'FreeLoader' INI section via its ID in the
  different functions that need it.

- Make the custom-boot and linux loaders honour the boot options they are
  supposed to support (see FREELDR.INI documentation / template).
  This includes the 'BootDrive' and 'BootPartition' (alternatively the ARC
  This also allows them to take into account the user-specified choices in the
  FreeLdr custom-boot editors.

- Modify the FreeLdr custom-boot editors so as to correctly honour
  the  priorities of the boot options as specified in the FREELDR.INI
  documentation / template.

- Use stack trick (union of structs) to reduce stack usage in the
  FreeLdr custom-boot editors, because there are strings buffers that are
  used in an alternate manner.

- Extract out from the editors the LoadOperatingSystem() calls, and
  move it back into OptionMenuCustomBoot(), so that when this latter
  function is called there is no risk of having a stack almost full.

- When building the ARC-compatible argument vector for the loaders, add
  the mandatory "SystemPartition" path. This allows the loaders to NOT
  call the machine-specific MachDiskGetBootPath() later on (this data is
  indeed passed to them by the boot manager part of FreeLdr).

- Improve the FsOpenFile() helper so as to make it:
  * return an adequate ARC_STATUS instead of a mere uninformative BOOLEAN;
  * take open options, as well as a default path (optional) that would be
    prepended to the file name in case the latter is a relative one.

- Make RamDiskLoadVirtualFile() return an actual descriptive ARC_STATUS
  value, and make it take an optional default path (same usage as the one
  in FsOpenFile() ).
  + Remove useless NTAPI .

- UiInitialize() and TuiTextToColor(), TuiTextToFillStyle(): load or
  convert named settings into corresponding values using setting table and
  a tight for-loop, instead of duplicating 10x the same parameter reading

- UiInitialize(): Open the "Display" INI section just once. Remove usage
  of DisplayModeText[] buffer.

- UiShowMessageBoxesInSection() and UiShowMessageBoxesInArgv(): reduce
  code indentation level.


- Don't use MachDiskGetBootPath() but use instead the "SystemPartition"
  value passed via the ARC argument vector by the boot manager
  (+ validation checks). Use it as the "default path" when calling
  FsOpenFile() or loading the ramdisk.

- Honour the FreeLdr-specific "Hal=" and "Kernel=" options by converting
  them into NT standard "/HAL=" and "/KERNEL=" options in the boot
  command line.

  Note that if the latter ones are already present on the standard "Options="
  option line, they would take precedence over those passed via the separate
  "Hal=" and "Kernel=" FreeLdr-specific options.

  Also add some documentation links to Geoff Chappell's website about
  how the default HAL and KERNEL names are chosen depending on the
  detected underlying platform on which the NT OS loader is running.

2 years ago[FREELDR] Formatting only.
Hermès Bélusca-Maïto [Fri, 30 Aug 2019 22:34:57 +0000 (00:34 +0200)]
[FREELDR] Formatting only.

2 years ago[FREELDR] Update the FREELDR.INI documentation / template.
Hermès Bélusca-Maïto [Fri, 30 Aug 2019 22:27:24 +0000 (00:27 +0200)]
[FREELDR] Update the FREELDR.INI documentation / template.

2 years ago[FREELDR] Move around & static-ify some disk/partition functions.
Hermès Bélusca-Maïto [Wed, 14 Aug 2019 13:22:55 +0000 (15:22 +0200)]
[FREELDR] Move around & static-ify some disk/partition functions.

2 years ago[VIDEOPRT] Fix uninitialized Reserved bit field in PciSlotNumber
Stanislav Motylkov [Fri, 30 Aug 2019 20:18:06 +0000 (23:18 +0300)]
[VIDEOPRT] Fix uninitialized Reserved bit field in PciSlotNumber


2 years ago[XBOXVMP] Add Xbox video miniport driver
Stanislav Motylkov [Mon, 12 Aug 2019 09:34:29 +0000 (12:34 +0300)]
[XBOXVMP] Add Xbox video miniport driver

Also make XboxVmp driver compatible with Video Port driver, specify
vendor id and device id explicitly in VideoPortGetAccessRanges() call


2 years agoUpdate Header
James Tabor [Thu, 29 Aug 2019 20:47:56 +0000 (15:47 -0500)]
Update Header

Add missing structure.

2 years agoFix the ntstrsafe.h tests to make sense, actually succeed using ntstrsafe.h from...
Colin Finck [Wed, 28 Aug 2019 20:42:52 +0000 (22:42 +0200)]
Fix the ntstrsafe.h tests to make sense, actually succeed using ntstrsafe.h from Win10 (10.0.15063), and fix ReactOS' ntstrsafe.h to also pass these tests. (#1859)

2 years agoFix and unify function prototypes for ntstrsafe functions taking variadic arguments.
Colin Finck [Mon, 19 Aug 2019 15:38:05 +0000 (17:38 +0200)]
Fix and unify function prototypes for ntstrsafe functions taking variadic arguments.

2 years ago[FORMATTING] Restore some kind of style to ntstrsafe.h, considering all comments...
Colin Finck [Mon, 19 Aug 2019 13:58:30 +0000 (15:58 +0200)]
[FORMATTING] Restore some kind of style to ntstrsafe.h, considering all comments in PR #522 and #523.

2 years ago[DDK] RtlUnicodeStringPrintf(Ex) implementations and ntstrsafe.h tests (#522, #523)
Hernán Di Pietro [Sat, 21 Apr 2018 06:56:12 +0000 (08:56 +0200)]
[DDK] RtlUnicodeStringPrintf(Ex) implementations and ntstrsafe.h tests (#522, #523)


+ Added buffer overrun tests.
+ New style header.
+ ISO C90 compatibility

[DDK] (CORE-9819): RtlUnicodeStringPrintf(Ex) and RtlUnicodeStringValidate(Ex) fixes plus formatting.

[DDK]: Cosmetic changes  (NTSTATUS variable naming and tabs)

[DDK] First implementation of Unicode functions for NtStrSafe (CORE-9819)

+ This implementation does not modify the interface of previous functions.
+ Since we need length returned for the destination UNICODE_STRING.Length field:
  - an intermediate "Len" postfixed function was added with optional
    argument to return the _vsnwprintf character count.
  - Wide Printf(Ex) functions already existent work now call new Rtlp
    private worker functions.
+ For several UnicodeStringPrintf(Ex) tests, see work going on CORE-14565


+ MSDN says they won't insert NULL characters on formatted strings. But
  seems this is incorrect at MSDN (interpret this as DONT ASSUME NULL-termination).
  We return zero-terminated strings, and MS functions seems to do the same.
  (XP DDK 7.1)

[DDK] First implementation of Unicode functions for NtStrSafe (CORE-9819)

+ This implementation does not modify the interface of previous functions.
+ Since we need length returned for the destination UNICODE_STRING.Length field:
  - an intermediate "Len" postfixed function was added with optional
    argument to return the _vsnwprintf character count.
  - Wide Printf(Ex) functions already existent work now call new Rtlp
    private worker functions.
+ For several UnicodeStringPrintf(Ex) tests, see work going on CORE-14565


+ MSDN says they won't insert NULL characters on formatted strings. But
  seems this is incorrect at MSDN (interpret this as DONT ASSUME NULL-termination).
  We return zero-terminated strings, and MS functions seems to do the same.
  (XP DDK 7.1)

[DDK] Fixed bad NtStrSafe.h va_start call (CORE-9819)

Update on RtlUnicodeStringPrintfEx plus cosmetic changes.

[DDK] First implementation of Unicode functions for NtStrSafe (CORE-9819)

+ This implementation does not modify the interface of previous functions.
+ Since we need length returned for the destination UNICODE_STRING.Length field:
  - an intermediate "Len" postfixed function was added with optional
    argument to return the _vsnwprintf character count.
  - Wide Printf(Ex) functions already existent work now call new Rtlp
    private worker functions.
+ For several UnicodeStringPrintf(Ex) tests, see work going on CORE-14565


+ MSDN says they won't insert NULL characters on formatted strings. But
  seems this is incorrect at MSDN (interpret this as DONT ASSUME NULL-termination).
  We return zero-terminated strings, and MS functions seems to do the same.
  (XP DDK 7.1)

[KMTESTS:RTL] Tests for new RtlUnicodePrintf(Ex) functions (CORE-14565)

+ 45 Tests working.
+ Lacks remaining non-Unicode functions in NtStrSafe.h for now.
+ Used for first tests on CORE-9819

[KMTESTS/RTL] Fixed test not taking care of null (CORE-14565)

[DDK] Fixed bad NtStrSafe.h va_start call (CORE-9819)

[KMTESTS:RTL] First Test.

Update on RtlUnicodeStringPrintfEx plus cosmetic changes.

[KMTESTS] Added NtStrSafe to test lists (CORE-14565)

First commit: Skeleton for test implementation + Addition to COMMON SOURCES in kmtests Cmake lists.

+Implementation of RtlStringVPrintfWorkerLenW, RtlStringVPrintfExWorkerLenW to avoid changing existing public functions. This is required as existent functions did not return vsnprintf result, so we didn't have any return info to update UNICODE_STRING.Length.
+Additional implementation of RtlUnicodeStringValidate for checking purposes.
+Former RtlStringVPrintfWorker(ex) refactored to RtlInternalStringVPrintf(Ex)WorkerW.
+No ANSI functions affected as we didn't need them for Unicode printf's.

WIP: RtlUnicodeStringPrintf

2 years ago[TRANSLATION][UTILMAN] Translations for UTILMAN and some other stuff (#1880)
Shy Zedaka [Tue, 27 Aug 2019 11:04:34 +0000 (14:04 +0300)]
[TRANSLATION][UTILMAN] Translations for UTILMAN and some other stuff (#1880)

2 years ago[CMLIB] Clean volatile registry entries in the same manner as Windows (#1883)
maharmstone [Tue, 27 Aug 2019 00:39:27 +0000 (01:39 +0100)]
[CMLIB] Clean volatile registry entries in the same manner as Windows (#1883)

This fixes the crashes in HvpGetCellMapped on Windows Server 2003 when booting from Freeloader, as mentioned in maharmstone/btrfs#16.

When the bootloader loads the system hive, it cleans the data pertaining to any volatile keys. The Windows bootloader does this by setting SubKeyCounts[Volatile] to 0. After boot, the kernel marks any cell where this is 0 but SubKeyLists[Volatile] isn't HCELL_NIL as dirty, meaning that the sanitized version will then get flushed to the disk.

Because Freeloader sets SubKeyLists[Volatile] to HCELL_NIL straightaway, Windows thinks the cell is clean, and can unload it without flushing. If it then reads it from the disk, it will crash in HvpGetCellMapped due to the stale volatile pointers.

If you break on nt!CmpInitializeSystemHive on Windows and "gu" to the let the function run, you'll see that DirtyVector of the HHIVE has only the first 8 bits set. If you run it using the official bootloader, it'll have a lot more than that.

2 years ago[WIN32SS][USER][EXPLORER] Add/Update portuguese translation (#1882)
Jose Carlos Jesus [Mon, 26 Aug 2019 19:01:41 +0000 (20:01 +0100)]
[WIN32SS][USER][EXPLORER] Add/Update portuguese translation (#1882)

2 years ago[CALC] Enable support for HTMLHELP (#1877)
Carlo Bramini [Mon, 26 Aug 2019 14:14:01 +0000 (16:14 +0200)]
[CALC] Enable support for HTMLHELP (#1877)

Nowadays ReactOS includes support for htmlhelp.h and a working implementation of HHCTRL.OCX. Although current imported HHCTRL.OCX suffers of this issue:
See also CORE-15019

+ Revert 'intptr_t' to 'size_t'.

2 years ago[MEDIA][FONTS] Add Verdana fonts (#1881)
Katayama Hirofumi MZ [Mon, 26 Aug 2019 13:19:06 +0000 (22:19 +0900)]
[MEDIA][FONTS] Add Verdana fonts (#1881)

- Add "Verdana", "Verdana Bold", "Verdana Bold Italic" and "Verdana Italic" fonts by duplicating "Bitstream Vera Sans" fonts and renaming them.
- Delete some "Verdana" font substitutes.
- Add LICENSE file.

I made these font files by using FontForge. Their family name is "Verdana". Their display names are "Verdana", "Verdana Bold", "Verdana Bold Italic" and "Verdana Italic". Their font filenames are verdana.ttf, verdanab.ttf, verdanaz.ttf and verdanai.ttf. The Underline Positions are hacked by adding an integer value for workaround of FontForge's bug. CORE-16264

2 years ago[ROSAPPS][SHLEXTDBG] Delete DbgPrint hack for gcc (fix build)
Katayama Hirofumi MZ [Mon, 26 Aug 2019 12:35:05 +0000 (21:35 +0900)]
[ROSAPPS][SHLEXTDBG] Delete DbgPrint hack for gcc (fix build)

2 years ago[MEDIA][FONTS] Make MS Sans Serif ells sans serif CORE-16166
Katayama Hirofumi MZ [Mon, 26 Aug 2019 01:07:56 +0000 (10:07 +0900)]
[MEDIA][FONTS] Make MS Sans Serif ells sans serif CORE-16166

2 years ago[MEDIA][FONTS] Adjust internal leading of Baltic MS Sans Serif
Katayama Hirofumi MZ [Sun, 25 Aug 2019 18:36:48 +0000 (03:36 +0900)]
[MEDIA][FONTS] Adjust internal leading of Baltic MS Sans Serif

2 years ago[NETAPI32] Implement DsEnumerateDomainTrustsW
Eric Kohl [Sun, 25 Aug 2019 16:23:38 +0000 (18:23 +0200)]
[NETAPI32] Implement DsEnumerateDomainTrustsW

2 years agoFix build
Ioannis Adamopoulos [Sun, 25 Aug 2019 11:53:52 +0000 (14:53 +0300)]
Fix build

2 years ago[NETAPI32] Implement DsAddressToSiteNamesA and DsAddressToSiteNamesExA
Eric Kohl [Sun, 25 Aug 2019 09:39:12 +0000 (11:39 +0200)]
[NETAPI32] Implement DsAddressToSiteNamesA and DsAddressToSiteNamesExA

2 years ago[HEADERS] Move some helpers from undocshell.h to shellutils.h as they didn't cover...
Ioannis Adamopoulos [Sun, 25 Aug 2019 09:17:42 +0000 (12:17 +0300)]
[HEADERS] Move some helpers from undocshell.h to shellutils.h as they didn't cover anything undocumented. Merge traycmd.h in undocshell.h as both contain just undocumented shell definitions.

2 years ago[NETAPI32] Fix a typo in DsDeregisterDnsHostRecordsA
Eric Kohl [Sun, 25 Aug 2019 09:15:00 +0000 (11:15 +0200)]
[NETAPI32] Fix a typo in DsDeregisterDnsHostRecordsA

Thank you very much UserNT and Thomas for the hint!

2 years ago[SETUPLIB][USETUP] Fix build about switch
Katayama Hirofumi MZ [Sun, 25 Aug 2019 03:07:31 +0000 (12:07 +0900)]
[SETUPLIB][USETUP] Fix build about switch

2 years ago[MEDIA][FONTS] Add Thai MS Sans Serif (ssee874.fon) CORE-16166
Katayama Hirofumi MZ [Sun, 25 Aug 2019 02:37:26 +0000 (11:37 +0900)]
[MEDIA][FONTS] Add Thai MS Sans Serif (ssee874.fon) CORE-16166

2 years ago[SETUPLIB][USETUP] Slightly modify how and when the HW system partition is detected...
Hermès Bélusca-Maïto [Sun, 25 Aug 2019 00:08:23 +0000 (02:08 +0200)]
[SETUPLIB][USETUP] Slightly modify how and when the HW system partition is detected and used.


- Find the system partition initially when we create the list of

- Split the old CheckActiveSystemPartition() helper in two helpers:
  FindSupportedSystemPartition() and SetActivePartition(). This allows
  simplifying slightly the former one, and allows the user, in an
  interactive situation, to decide whether the "supported system
  partition" found can actually be used or not.

- Remove the "OriginalSystemPartition" hack in the PARTLIST structure.
- Add a note regarding the SystemPartition member in PARTLIST.


- Use the introduced helpers from above. If the "system" partition we
  are going to use, in case we install ReactOS on a fixed disk, is *NOT*
  the same as the original one (e.g. because it is detected to be not
  supported by ReactOS...), display an informative screen to the user
  and let him confirm whether or not he wants to change the partition.

If we install on a fixed disk, try to find a supported system partition
on the system. Otherwise if we install on a removable disk, use the
install partition as the system partition instead.

This allows providing a fix for CORE-16274.

2 years ago[SETUPLIB][USETUP] Code simplifications & fixes.
Hermès Bélusca-Maïto [Sat, 24 Aug 2019 23:32:46 +0000 (01:32 +0200)]
[SETUPLIB][USETUP] Code simplifications & fixes.


- Remove useless HiddenSectors member in PARTENTRY structure.
- InsertDiskRegion() helper returns a BOOLEAN success.
- CreateInsertBlankRegion() helper sets LogicalPartition.

- Simplify the InitializePartitionEntry() helper so that its PartEntry
  parameter is clearly the one that is being initialized (i.e. converted
  from a blank region to) an actual partition, and use the helper
  CreateInsertBlankRegion(). The calculations for the StartSector and
  SectorCount are exactly equivalent with the old version of this
  function. Also make it return a BOOLEAN success instead.
  + Add some extra validation checks.
  + Adjust CreatePrimaryPartition(), CreateExtendedPartition() and
    CreateLogicalPartition() in this regard.

- Better handling of "RAW"-mounted partitions: treat them as
  "Unformatted" only if they are RAW *AND* their PartitionType is one of
  those associated with FAT file-system. Otherwise we cannot decide
  whether they are indeed unformatted or have an unknown file-system on
  them, therefore treat them as the latter.
  In this regard, the IsSupportedActivePartition() helper should not
  look for FileSystem == RAW but instead only look whether the partition
  is Unformatted.

  This should help with situations similar to the one described in CORE-16274
  where a partition with a genuine file-system but not recognized by
  ReactOS (because we currently do not have the EXT2/3/4 filesystem
  driver loaded during 1st-stage setup due to commit 5a650f6b) and
  therefore mounted as RAW, was thought to be unformatted.

- Use the "global" SystemPartition pointer: this is the "system"
  partition we will actually use. It can be different from the actual
  one of the computer, for example when we install ReactOS on a
  removable disk. This allows also to simplify the code.

- Remove the single-used DestinationDriveLetter variable.

- Remove BuildInstallPaths() helper and use InitDestinationPaths()
  directly instead.

- Always mention the disk where the partition being formatted is.
- Cleanup old code comments, add assertions here & there...

2 years ago[NETAPI32] Implement DsDeregisterDnsHostRecordsA
Eric Kohl [Sat, 24 Aug 2019 20:57:36 +0000 (22:57 +0200)]
[NETAPI32] Implement DsDeregisterDnsHostRecordsA

2 years ago[NETAPI32] Implement DsGetDcNameWithAccountA
Eric Kohl [Sat, 24 Aug 2019 19:40:11 +0000 (21:40 +0200)]
[NETAPI32] Implement DsGetDcNameWithAccountA

2 years ago[NETAPI32] Implement DsGetDcSiteCoverageA
Eric Kohl [Sat, 24 Aug 2019 17:44:37 +0000 (19:44 +0200)]
[NETAPI32] Implement DsGetDcSiteCoverageA

2 years ago[NETAPI32] Add the NetpAllocStrFromWStr helper function
Eric Kohl [Sat, 24 Aug 2019 12:00:33 +0000 (14:00 +0200)]
[NETAPI32] Add the NetpAllocStrFromWStr helper function

2 years ago[NETAPI32] Implement DsGetSiteNameA
Eric Kohl [Sat, 24 Aug 2019 11:15:41 +0000 (13:15 +0200)]
[NETAPI32] Implement DsGetSiteNameA

Also add the NetpAllocAnsiStrFromWStr helper function.

2 years ago[NTOSKRNL] Fix indentation. No code changes!
Eric Kohl [Sat, 24 Aug 2019 08:02:55 +0000 (10:02 +0200)]
[NTOSKRNL] Fix indentation. No code changes!

2 years ago[TESTS] Add a test for spec2def 1867/head
Mark Jansen [Tue, 20 Aug 2019 17:09:10 +0000 (19:09 +0200)]
[TESTS] Add a test for spec2def

2 years ago[CMAKE] Turn C4715: "'function': not all control paths return a value" into an error...
Timo Kreuzer [Sat, 17 Aug 2019 18:29:16 +0000 (20:29 +0200)]
[CMAKE] Turn C4715: "'function': not all control paths return a value" into an error on MSVC builds

2 years ago[NTOSKRNL] Demote some noisy dprints 1865/head
Mark Jansen [Tue, 20 Aug 2019 12:20:17 +0000 (14:20 +0200)]
[NTOSKRNL] Demote some noisy dprints

2 years ago[SETUPAPI] Demote some noisy dprints
Mark Jansen [Tue, 20 Aug 2019 12:19:29 +0000 (14:19 +0200)]
[SETUPAPI] Demote some noisy dprints

2 years ago[NTDLL] Use the embedded manifest from the process to check compatibility. 1871/head
Mark Jansen [Sun, 23 Dec 2018 17:36:59 +0000 (18:36 +0100)]
[NTDLL] Use the embedded manifest from the process to check compatibility.

2 years ago[TRANSLATION] Changes to Newdev and hdwwiz
Shy Zedaka [Wed, 21 Aug 2019 10:03:32 +0000 (13:03 +0300)]
[TRANSLATION] Changes to Newdev and hdwwiz

2 years ago[TRANSLATION] Change the recycle bin from 'Trash' to 'Recycle bin'
Shy Zedaka [Mon, 19 Aug 2019 17:41:20 +0000 (20:41 +0300)]
[TRANSLATION] Change the recycle bin from 'Trash' to 'Recycle bin'

2 years ago[README.WINE] Update paths and add winetests/iphlpapi (#1866)
Serge Gautherie [Wed, 21 Aug 2019 07:01:47 +0000 (09:01 +0200)]
[README.WINE] Update paths and add winetests/iphlpapi (#1866)

2 years ago[CRT_APITEST] Exclude a test with the same rule as in the cmakelist 1855/head
Mark Jansen [Sun, 18 Aug 2019 19:48:44 +0000 (21:48 +0200)]
[CRT_APITEST] Exclude a test with the same rule as in the cmakelist

2 years ago[NTDLL_VISTA] Fix the build for arm
Mark Jansen [Sun, 18 Aug 2019 19:48:07 +0000 (21:48 +0200)]
[NTDLL_VISTA] Fix the build for arm

2 years ago[FRAMEDYN[ARM] Fix some exports
Mark Jansen [Sun, 18 Aug 2019 19:47:35 +0000 (21:47 +0200)]
[FRAMEDYN[ARM] Fix some exports

2 years ago[NTDLL][ARM] Export pow
Mark Jansen [Sun, 18 Aug 2019 19:47:14 +0000 (21:47 +0200)]
[NTDLL][ARM] Export pow

2 years ago[TIMEOUT] Use Int32x32To64 instead of __emul
Mark Jansen [Sun, 18 Aug 2019 17:13:04 +0000 (19:13 +0200)]
[TIMEOUT] Use Int32x32To64 instead of __emul

2 years ago[SDK] Update Int32x32To64 macro for arm
Mark Jansen [Tue, 20 Aug 2019 11:02:35 +0000 (13:02 +0200)]
[SDK] Update Int32x32To64 macro for arm

2 years ago[RUNTMCHK] Provide fallback memset for arm builds
Mark Jansen [Sun, 18 Aug 2019 17:12:30 +0000 (19:12 +0200)]
[RUNTMCHK] Provide fallback memset for arm builds

2 years ago[FREELDR][ARM] Suppress error about unused var
Mark Jansen [Sun, 18 Aug 2019 17:11:50 +0000 (19:11 +0200)]
[FREELDR][ARM] Suppress error about unused var

2 years ago[NDK][ARM] Stub a few required types for bootlib
Mark Jansen [Sun, 18 Aug 2019 17:06:54 +0000 (19:06 +0200)]
[NDK][ARM] Stub a few required types for bootlib

2 years ago[BOOTLIB] Disable some x86 / x64 specific code for other architectures
Mark Jansen [Sun, 18 Aug 2019 17:03:35 +0000 (19:03 +0200)]
[BOOTLIB] Disable some x86 / x64 specific code for other architectures

2 years ago[ROSLOAD] Disable some arch-specific code for arm
Mark Jansen [Sun, 18 Aug 2019 17:02:46 +0000 (19:02 +0200)]
[ROSLOAD] Disable some arch-specific code for arm

2 years ago[CMAKE] Add explicit failure message
Mark Jansen [Sun, 18 Aug 2019 14:39:45 +0000 (16:39 +0200)]
[CMAKE] Add explicit failure message
Previously this would show up as dependency cycle

2 years ago[CMAKE] Some arm cmake fixes
Mark Jansen [Sun, 18 Aug 2019 14:14:16 +0000 (16:14 +0200)]
[CMAKE] Some arm cmake fixes

2 years ago[IPHLPAPI] icmp.c: Restore sync after Wine Staging 1.7.55
Serge Gautherie [Tue, 20 Aug 2019 04:36:16 +0000 (06:36 +0200)]
[IPHLPAPI] icmp.c: Restore sync after Wine Staging 1.7.55

Mark all our (new) differences.

2 years ago[PSDK] Fix GCC8 complaining on duplicate and wrong declarations
Victor Perevertkin [Sat, 17 Aug 2019 20:08:22 +0000 (23:08 +0300)]
[PSDK] Fix GCC8 complaining on duplicate and wrong declarations

2 years ago[APITESTS] Ignore GCC8 warnings where we test some crazy stuff
Victor Perevertkin [Sat, 17 Aug 2019 20:05:45 +0000 (23:05 +0300)]
[APITESTS] Ignore GCC8 warnings where we test some crazy stuff

2 years ago[APITESTS] Use StringCbPrintfA instead of sprintf
Victor Perevertkin [Sat, 17 Aug 2019 20:04:41 +0000 (23:04 +0300)]
[APITESTS] Use StringCbPrintfA instead of sprintf
And fix a buffer size in Test_AddFontResourceA

2 years ago[WINETESTS] Supress GCC8 warnings
Victor Perevertkin [Sat, 17 Aug 2019 19:56:40 +0000 (22:56 +0300)]
[WINETESTS] Supress GCC8 warnings

2 years ago[CMAKE] Define GCC and CLANG cmake variables
Victor Perevertkin [Mon, 19 Aug 2019 22:07:45 +0000 (01:07 +0300)]
[CMAKE] Define GCC and CLANG cmake variables

2 years ago[VIDEOPRT] Fix RtlCopyMemory sizeof usage
Victor Perevertkin [Sat, 17 Aug 2019 19:15:04 +0000 (22:15 +0300)]
[VIDEOPRT] Fix RtlCopyMemory sizeof usage
Spotted by GCC8

2 years ago[WIN32SS] WindowSnap must not affect the taskbar
Joachim Henze [Tue, 20 Aug 2019 10:07:56 +0000 (12:07 +0200)]
[WIN32SS] WindowSnap must not affect the taskbar

This fixes regression CORE-16289 where we could not longer
move the taskbar at a different than default location,
as WindowSnap would interfere.

Many Thanks to the patches author Doug Lyons.

Eventually the heuristic that we use here to identify the
taskbar via used window-styles could be improved later.
Theoretically possible that it bails out on some other windows.

The regression was introduced by 0.4.12-dev-373-g

2 years ago[NTOS:INBV] Refactor boot screen code and resources (#1649)
Yaroslav Kibysh [Mon, 19 Aug 2019 23:52:25 +0000 (02:52 +0300)]
[NTOS:INBV] Refactor boot screen code and resources (#1649)

* [NTOS:INBV] Move typedefs to the only single file where they are used.

* [NTOS:INBV] Refactor code & resources

Remove garbage

* [NTOS:INBV] Reduce fade time and remove wait for animation.

2 years ago[HAL] Refactor PCI blacklisting for Xbox
Stanislav Motylkov [Mon, 19 Aug 2019 21:48:49 +0000 (00:48 +0300)]
[HAL] Refactor PCI blacklisting for Xbox

- Use a separate function for detecting blacklisted PCI slots
- Blacklist PCI-to-PCI bridge to avoid stack overflow on real hardware Microsoft Xbox 1.3

CORE-16319 CORE-16216

2 years ago[RAPPS] Remove unused function definitions 1554/head
Mark Jansen [Mon, 19 Aug 2019 23:41:40 +0000 (01:41 +0200)]
[RAPPS] Remove unused function definitions

2 years ago[RAPPS] CDownloadManager: Get rid of the implementation of IBindStatusCallback as...
Giannis Adamopoulos [Mon, 29 Apr 2019 12:12:32 +0000 (15:12 +0300)]
[RAPPS] CDownloadManager: Get rid of the implementation of IBindStatusCallback as we stopped using URLDownloadToFileW a decade ago

2 years ago[RAPPS] CDownloadManager: simplify canceling
Giannis Adamopoulos [Mon, 29 Apr 2019 11:21:08 +0000 (14:21 +0300)]
[RAPPS] CDownloadManager: simplify canceling

2 years ago[RAPPS] factor CDownloaderProgress class out of CDownloadManager and CDownloadDialog
Giannis Adamopoulos [Mon, 29 Apr 2019 08:33:33 +0000 (11:33 +0300)]
[RAPPS] factor CDownloaderProgress class out of CDownloadManager and CDownloadDialog

2 years ago[RAPPS] CDowloadingAppsListView: The download dialog doesn't use the layout engine...
Giannis Adamopoulos [Mon, 29 Apr 2019 08:05:35 +0000 (11:05 +0300)]
[RAPPS] CDowloadingAppsListView: The download dialog doesn't use the layout engine so there is no need for it to be a CUiWindow

2 years ago[RAPPS] CMainWindow: use more atl
Giannis Adamopoulos [Sun, 28 Apr 2019 15:15:55 +0000 (18:15 +0300)]
[RAPPS] CMainWindow: use more atl

2 years ago[RAPPS] CMainWindow: remove unused functions , and the globals g_MainWindow and hListView
Giannis Adamopoulos [Sun, 28 Apr 2019 03:30:32 +0000 (06:30 +0300)]
[RAPPS] CMainWindow: remove unused functions , and the globals g_MainWindow and hListView