reactos.git
14 months ago[SETUPLIB][USETUP] Refactor the DoesFileExist() function so that it now looks closer...
Hermès Bélusca-Maïto [Wed, 24 May 2017 16:37:49 +0000 (16:37 +0000)]
[SETUPLIB][USETUP] Refactor the DoesFileExist() function so that it now looks closer to DoesPathExist() and use it almost everywhere.

- Adjust also its callers, adjust OpenAndMapFile() parameters.
- Related to that, simplify IsValidNTOSInstallation() parameters & introduce a IsValidNTOSInstallation_UStr()
  that does the same, but takes a UNICODE_STRING instead.
- Simplify CheckForValidPEAndVendor().

Now only exactly 5 calls use the "old" 'DoesFileExist' syntax, using a temporarily auxiliary function "DoesFileExist_2"...

svn path=/branches/setup_improvements/; revision=74641

14 months ago[SETUPLIB][USETUP] Transform the existing ConcatPaths() function into a variadic...
Hermès Bélusca-Maïto [Tue, 23 May 2017 22:30:54 +0000 (22:30 +0000)]
[SETUPLIB][USETUP] Transform the existing ConcatPaths() function into a variadic function, and derive a CombinePaths() from it (plus their equivalent taking va_list).

This allows building concatenated paths with an arbitrary number of separated components.
- Use the newly-introduced CombinePaths() and ConcatPaths() functions.
- Fix also few comments, and place some UNICODE_NULLs here & there.

svn path=/branches/setup_improvements/; revision=74637
svn path=/branches/setup_improvements/; revision=74640

14 months ago[SETUPLIB][USETUP] Move some code to the SetupLib.
Hermès Bélusca-Maïto [Tue, 23 May 2017 11:39:12 +0000 (11:39 +0000)]
[SETUPLIB][USETUP] Move some code to the SetupLib.

- filesup.c's functions ConcatPaths(), Does[Path|File]Exist(), NtPathToDiskPartComponents(), OpenAndMapFile(), UnMapFile();
- Move the inicache library to setuplib as it'll be used for the 1st stage GUI setup too (indeed, there is no good INI file API
  under Win32; the Win32 profile "API" is just good enough to manipulate the win16 ini files, and are here anyways for backward
  compatibility purposes only);
- Move the OS detector too.
- Remove the duplicated ConcatPaths() code in arcname.c.

svn path=/branches/setup_improvements/; revision=74634
svn path=/branches/setup_improvements/; revision=74638

14 months ago[NTOSKRNL] Ignore IMAGE_SCN_CNT_UNINITIALIZED_DATA
Mark Jansen [Thu, 19 Apr 2018 19:58:09 +0000 (21:58 +0200)]
[NTOSKRNL] Ignore IMAGE_SCN_CNT_UNINITIALIZED_DATA
CORE-12582
CORE-14556

14 months ago[NTDLL_APITEST] Add tests for mapping and relocating an image with IMAGE_SCN_CNT_UNIN...
Thomas Faber [Thu, 19 Apr 2018 19:55:35 +0000 (21:55 +0200)]
[NTDLL_APITEST] Add tests for mapping and relocating an image with IMAGE_SCN_CNT_UNINITIALIZED_DATA
CORE-12582
CORE-14556

14 months ago[CREDITS] Update the credits list
Stanislav Motylkov [Thu, 31 May 2018 21:10:42 +0000 (00:10 +0300)]
[CREDITS] Update the credits list

14 months ago[SYSDM] Update the credits list
Stanislav Motylkov [Thu, 31 May 2018 18:23:42 +0000 (21:23 +0300)]
[SYSDM] Update the credits list

Added to Development Team:

Aleksandar Andrejevic
Alexander Shaposhnikov
Amine Khaldi
Benedikt Freisen
Cameron Gutman
David Quintana
Giannis Adamopoulos
Hermès Bélusca-Maïto
Jérôme Gardou
Katayama Hirofumi MZ
Mark Jansen
Peter Hater
Stanislav Motylkov
Thomas Faber
Vadim Galyant

Added to Release Engineers:

Amine Khaldi
Joachim Henze
Thomas Faber

14 months ago[SYSDM] Fix typo in the credits
Stanislav Motylkov [Thu, 31 May 2018 16:22:27 +0000 (19:22 +0300)]
[SYSDM] Fix typo in the credits

Contributers -> Contributors

14 months ago[SCREENSAVER] Add Italian translation. (#587)
SebastianoPistore [Sun, 3 Jun 2018 14:43:50 +0000 (16:43 +0200)]
[SCREENSAVER] Add Italian translation. (#587)

By Sebastiano Pistore.

14 months ago[COMCTL32] Simplify some ifdefs CORE-14649
Joachim Henze [Sun, 3 Jun 2018 12:27:34 +0000 (14:27 +0200)]
[COMCTL32] Simplify some ifdefs CORE-14649

Addendum to 16d6c9b5e05ffd7a0fff29531f69e18b010124c0
Giannis suggested and Thomas explained:

Before the Wine sync, comctl32/button.c was based on ROS's
user32/button.c, so _USER32_ would highlight changes between
user32 (originally based on Wine) and comctl32. Now our
comctl32/button.c is based on Wine's comctl32/button.c, so
__REACTOS__ is enough.

14 months ago[CMD] Improve the situations when the console title can be changed.
Hermès Bélusca-Maïto [Sun, 3 Jun 2018 00:15:44 +0000 (02:15 +0200)]
[CMD] Improve the situations when the console title can be changed.

- Introduce two small helpers to change and restore the console title.
- Console title can change even when internal commands are executed.
- Note that when commands are run from within batch files, title is unchanged.
- When "cmd.exe /c command" is run, the console title is unchanged; however
  when "cmd.exe /k command" is run, the console title changes.

14 months ago[CMD] Print a newline after the interactive 'pause' command message finishes to run.
Hermès Bélusca-Maïto [Sun, 3 Jun 2018 00:13:11 +0000 (02:13 +0200)]
[CMD] Print a newline after the interactive 'pause' command message finishes to run.

14 months ago[BOOTDATA] Use double quotes for mspaint file path
Stanislav Motylkov [Sat, 2 Jun 2018 10:17:41 +0000 (13:17 +0300)]
[BOOTDATA] Use double quotes for mspaint file path

Addendum to 313ded4. CORE-13293

14 months ago[ZIPFLDR] Fix text-cutoff + improve de-DE CORE-14682
Joachim Henze [Sat, 2 Jun 2018 20:03:03 +0000 (22:03 +0200)]
[ZIPFLDR] Fix text-cutoff + improve de-DE CORE-14682

14 months ago[SYSDM] Improvements to the user profile page
Eric Kohl [Sat, 2 Jun 2018 14:11:10 +0000 (16:11 +0200)]
[SYSDM] Improvements to the user profile page

- Store the full profile user name in the listview item for later use in the delete and copy functions.
- Change the button state according to the selected profile.
- Fix some hard-coded string sizes.

14 months ago[CRT] Reimplement qsort() using FreeBSD implementation.
Pierre Schweitzer [Sat, 2 Jun 2018 11:52:09 +0000 (13:52 +0200)]
[CRT] Reimplement qsort() using FreeBSD implementation.

Our implementation had a bug that could be triggered while
building our USBD library on ReactOS: the compare function
could be called with a NULL pointer instead of a valid value.

With this bug fixed (and the cmd hack in CORE-14648), ReactOS
can totally selfhost :-)! I was able to build LiveCD and BootCD
without any trouble, crash, deadlock or whatever.
(Next step: having a buildbot slave hosted on ReactOS ;-)).

Enjoy: https://twitter.com/HeisSpiter/status/1002880397103988737

CORE-14680

14 months ago[COMCTL32] Fix regression CORE-14649
Joachim Henze [Sat, 2 Jun 2018 10:26:48 +0000 (12:26 +0200)]
[COMCTL32] Fix regression CORE-14649

Fixes a regression that was introduced by Wine Staging 3.3 Sync.
Symptom was missing button text and icons for specific buttons
in Delphi applications, e.g. Double-Commander, Lazarus, Peazip.
The patch restores and ifdef-guards previous changes of Giannis.

14 months ago[SYSDM] Retrieve and show the domain and user names for the user profiles
Eric Kohl [Sat, 2 Jun 2018 10:18:19 +0000 (12:18 +0200)]
[SYSDM] Retrieve and show the domain and user names for the user profiles

Fixes CORE-11789

14 months ago[KERNEL32] Get/SetTimeZoneInformation: Convert the Milliseconds value between TIME_FI...
Eric Kohl [Fri, 1 Jun 2018 10:49:26 +0000 (12:49 +0200)]
[KERNEL32] Get/SetTimeZoneInformation: Convert the Milliseconds value between TIME_FIELDS and SYSTEMTIME too

CORE-14658

14 months agoCreate a Code of conduct to complete the Github community checklist (#431)
Dheeraj Bhaskar [Thu, 31 May 2018 21:26:33 +0000 (02:56 +0530)]
Create a Code of conduct to complete the Github community checklist (#431)

14 months ago[MSPAINT] use __targv[1] instead of lpszArgument
Benedikt Freisen [Thu, 31 May 2018 18:17:30 +0000 (20:17 +0200)]
[MSPAINT] use __targv[1] instead of lpszArgument

This should make Paint's handling of command line strings less brittle.

CORE-13293

14 months ago[USETUP] Some fixes/improvements suggested by Thomas (2/2).
Hermès Bélusca-Maïto [Mon, 22 May 2017 15:55:16 +0000 (17:55 +0200)]
[USETUP] Some fixes/improvements suggested by Thomas (2/2).

- In the partlist.c disk getters: Remove useless "IsListEmpty(&List->DiskListHead)" checks, because this is actually the kind of check the while() loop does just after...
- Fix few DPRINTs.

svn path=/branches/setup_improvements/; revision=74629

14 months ago[USETUP] Further improve the OS detection code.
Hermès Bélusca-Maïto [Mon, 22 May 2017 22:59:11 +0000 (22:59 +0000)]
[USETUP] Further improve the OS detection code.

- Improve FindExistingNTOSInstall() so that we can find an existing installation either by system root
  ARC path or NT path. This is used during the enumeration of available installations from the boot.ini/freeldr.ini
  and during other existence & validity checks of NTOS installations.
- Improve AddNTOSInstallation() so that we can save the system root ARC path and NT path of the installation,
  as well as its partition entry structure pointer, for caching & later retrieval purposes.
- Remove some deprecated comments & todos, and implement other todos.
- Improve the output of some DPRINTs.
- Fix the return value of FindSubStrI.

svn path=/branches/setup_improvements/; revision=74632

14 months ago[USETUP] Some fixes/improvements suggested by Thomas (1/2).
Hermès Bélusca-Maïto [Mon, 22 May 2017 15:55:16 +0000 (17:55 +0200)]
[USETUP] Some fixes/improvements suggested by Thomas (1/2).

- isspace('\0') returns FALSE anyways so no need to separately test for a NULL character;
- The (str/wcs)toul function cannot return a NULL pointer from its second paramter;
- VersionInfo32_FindChild(): the third argument is indeed a number of characters (not bytes),
  so rename the parameter to make this fact clear. The function is however correctly used within this module.

svn path=/branches/setup_improvements/; revision=74629

14 months ago[USETUP] Improve the NTOS installations detector.
Hermès Bélusca-Maïto [Mon, 22 May 2017 01:19:08 +0000 (01:19 +0000)]
[USETUP] Improve the NTOS installations detector.

In all the disks/partitions available, it searches for the presence of freeldr.ini / boot.ini, open & parse them,
and enumerates the available boot entries (as candidates for installations). For each of them, it maps their ARC paths
into the NT namespace (hence the ARC 2 NT path resolver committed in r74621), then attempts to detect in these paths
the existence of NTOS installations.

svn path=/branches/setup_improvements/; revision=74622

14 months ago[SETUPLIB] Add an ARC path to (and from) NT path resolver.
Hermès Bélusca-Maïto [Mon, 22 May 2017 01:09:35 +0000 (01:09 +0000)]
[SETUPLIB] Add an ARC path to (and from) NT path resolver.

The NT path resolver allows mapping between an ARC path as specified in freeldr.ini / boot.ini , to its corresponding NT path, if possible.
Currently, only the mapping direction "ARC to NT" is implemented. It will be used wherever such mappings are needed, for example when identifying
the ReactOS / Windows installations from the available freeldr.ini / boot.ini entries (for upgrading / repair purposes).

The resolver supports the usual ARC paths: multi()disk()[r|f]disk()[partition()] ; eisa()disk()[r|f]disk()[partition()] ; multi()disk()cdrom() ;
scsi()disk()[r|f]disk()[partition()] ; scsi()cdrom()fdisk() ; ramdisk(x) ; net(x) (actually reported as "unsupported" since it would map to some
path on some network), and the newly-introduced Win2k signature()disk()rdisk()[partition()].

The code is in work-in-progress status.
Some validation tests, that were used during the implementation of the resolver, have been added.

svn path=/branches/setup_improvements/; revision=74621
svn path=/branches/setup_improvements/; revision=74631

14 months ago[USETUP][SETUPLIB] Move all the code that retrieves the version resources from PE...
Hermès Bélusca-Maïto [Sun, 21 May 2017 23:41:04 +0000 (23:41 +0000)]
[USETUP][SETUPLIB] Move all the code that retrieves the version resources from PE executable, out of osdetect.c, and place it in its own module inside the SetupLib.

Remove also some commented headers in precomp.h.

svn path=/branches/setup_improvements/; revision=74618

14 months ago[USETUP] PartList module: Add a couple of disk/partition getters: GetDiskByBiosNumber...
Hermès Bélusca-Maïto [Sun, 21 May 2017 23:36:13 +0000 (23:36 +0000)]
[USETUP] PartList module: Add a couple of disk/partition getters: GetDiskByBiosNumber, GetDiskByNumber, GetDiskBySCSI, GetDiskBySignature, GetPartition, GetDiskOrPartition.
They will be used in the subsequent commits.

svn path=/branches/setup_improvements/; revision=74617

14 months ago[USETUP] Introduce an NT OS installation detector: a functionality that attempts...
Hermès Bélusca-Maïto [Sat, 13 May 2017 16:13:19 +0000 (16:13 +0000)]
[USETUP] Introduce an NT OS installation detector: a functionality that attempts to detect installations of NT 5.x operating systems (MS Windows <= 2k3, ReactOS).

The aim is to use this detector to be able to detect and select an existing installation of ReactOS for upgrading.
The user then could either select one, or skip this step and perform a regular ReactOS installation.

What remains to be done, is to parse the NTOS loader configuration files (freeldr.ini in ReactOS' case, or boot.ini in Win2k3's case, etc...)
to retrieve the actual installation paths. So far these are currently hardcoded for testing purposes only.

The detector attempts to distinguish between ReactOS and Windows installations by checking at the company name vendor of the ntoskrnl.exe & ntdll.dll files,
so that only ReactOS installations are allowed to be upgraded.

svn path=/branches/setup_improvements/; revision=74527
svn path=/branches/setup_improvements/; revision=74550

14 months ago[NDK] Replace the SYSTEMTIME fields StandardDate and DaylightDate in RTL_TIME_ZONE_IN...
Eric Kohl [Thu, 31 May 2018 15:48:29 +0000 (17:48 +0200)]
[NDK] Replace the SYSTEMTIME fields StandardDate and DaylightDate in RTL_TIME_ZONE_INFORMATION by TIME_FIELDs and fix resulting errors

Patch will be sent upstream.

CORE-14658

14 months ago[NTDLL_APITEST] Add missing test file for 0f8e7207.
Eric Kohl [Thu, 31 May 2018 15:12:52 +0000 (17:12 +0200)]
[NTDLL_APITEST] Add missing test file for 0f8e7207.

CORE-14658

14 months ago[NTDLL_APITEST][LIB_RTL] Add a test for RtlQueryTimeZoneInformation and fix the bug...
Eric Kohl [Thu, 31 May 2018 14:47:42 +0000 (16:47 +0200)]
[NTDLL_APITEST][LIB_RTL] Add a test for RtlQueryTimeZoneInformation and fix the bug in RtlpQueryRegistryDirect

In working on some problems with Time Zone adjustments in  ReactOS I found that the RtlQueryTimeZoneInformation function is partially broken and wrote an apitest to capture the failures.

Patch by Doug Lyons.

CORE-14658

14 months ago[WINLOGON] Update Italian translation (#513) (by deleted user)
Hermès Bélusca-Maïto [Thu, 31 May 2018 13:41:09 +0000 (15:41 +0200)]
[WINLOGON] Update Italian translation (#513) (by deleted user)

14 months ago[SHELL32] Fix and improve the PickIconDlg function (#574)
Katayama Hirofumi MZ [Thu, 31 May 2018 13:33:07 +0000 (22:33 +0900)]
[SHELL32] Fix and improve the PickIconDlg function (#574)

CORE-10972

14 months ago[USERENV] LoadUserProfileW: User the user name passed in via lpProfileInfo to create...
Eric Kohl [Wed, 30 May 2018 21:28:27 +0000 (23:28 +0200)]
[USERENV] LoadUserProfileW: User the user name passed in via lpProfileInfo to create the profile directory instead of the user name extracted from the token

14 months ago[SHELL32] Implement the 'Advanced' button of the 'File Types' dialog (#565)
Katayama Hirofumi MZ [Wed, 30 May 2018 15:22:31 +0000 (00:22 +0900)]
[SHELL32] Implement the 'Advanced' button of the 'File Types' dialog (#565)

This allows the user to edit the File Type / extension information by clicking 'Advanced' button in the 'File Types' property sheet of Folder Options.
CORE-12906, CORE-10972

14 months ago[MSGINA] Remove a dialog that should not have been added.
Eric Kohl [Wed, 30 May 2018 13:22:29 +0000 (15:22 +0200)]
[MSGINA] Remove a dialog that should not have been added.

14 months ago[GDI32][LPK] BiDi support for ExtTextOut and GetCharacterPlacement (#534)
Baruch Rutman [Wed, 30 May 2018 12:41:22 +0000 (15:41 +0300)]
[GDI32][LPK] BiDi support for ExtTextOut and GetCharacterPlacement (#534)

Introduce BiDi (bi-directional text) support for ExtTextOut and GetCharacterPlacement, using Wine's GDI BIDI_Reorder function.
Solves the main issue with CORE-7003.

To be compatible with Win2k3+, introduce the "Language Pack" (LPK) dll.
- All the bidi code is removed from gdi32 and replaced by calls to LPK.
  Gdi32 uses dynamic linking to lpk.dll. In case of linking failure no bidi processing will be available.
- Implemented LpkGetCharacterPlacement.
- Implement LpkExtTextOut.
- Add a demo test program to show how the apis should function.
- Added all the remaining code, added special case for lpDx calculation if also GCP_GLYPHSHAPE flag was called.
  Applications that call GCP that use GCP_GLYPHSHAPE flags should also use the GCP_REORDER flag.
  (As written in https://msdn.microsoft.com/en-us/library/windows/desktop/dd144860(v=vs.85).aspx )
- Add ETO_RTLREADING flag handling.
  Imported the ETO_RTLREADING flag handling from wine, which changes the string part order (runs).
  A RRR1LLLRRR2 string without will show as RRR1LLLRRR2 without it, with it RRR2LLLRRR1.

14 months ago[REACTOS] Improve/Fix some "printf" formats (#555)
Serge Gautherie [Wed, 30 May 2018 12:18:23 +0000 (14:18 +0200)]
[REACTOS] Improve/Fix some "printf" formats (#555)

The smbios.c one was initially spotted by "Alahndro" on CORE-6328.

14 months ago[FONTS] Improve Tahoma Bold font (tahomabd.ttf) #580
Katayama Hirofumi MZ [Wed, 30 May 2018 11:44:54 +0000 (20:44 +0900)]
[FONTS] Improve Tahoma Bold font (tahomabd.ttf) #580

14 months ago[SYSSETUP][USERENV] Create the system profile after the creation of the default profi...
Eric Kohl [Wed, 30 May 2018 07:21:14 +0000 (09:21 +0200)]
[SYSSETUP][USERENV] Create the system profile after the creation of the default profile has been finished

CopySystemProfile: Don't try to create the user hive. Just copy it as it has already been created.

14 months ago[SYSSETUP] Save the HKEY_USERS\.DEFAULT hive in the ntuser.dat file of the default...
Eric Kohl [Wed, 30 May 2018 06:18:55 +0000 (08:18 +0200)]
[SYSSETUP] Save the HKEY_USERS\.DEFAULT hive in the ntuser.dat file of the default user profile

14 months ago[SYSSETUP] Fix an issue that may be caused by a missing security settings file
Eric Kohl [Tue, 29 May 2018 10:49:24 +0000 (12:49 +0200)]
[SYSSETUP] Fix an issue that may be caused by a missing security settings file

Found by Serge Gautherie

14 months ago[SYSSETUP] Open the security settings inf file only once in order to apply the settings
Eric Kohl [Mon, 28 May 2018 23:32:52 +0000 (01:32 +0200)]
[SYSSETUP] Open the security settings inf file only once in order to apply the settings

14 months ago[VFATLIB] Addendum to 469289e
Pierre Schweitzer [Mon, 28 May 2018 21:38:00 +0000 (23:38 +0200)]
[VFATLIB] Addendum to 469289e

14 months ago[VFATLIB] Fix MSVC build?
Pierre Schweitzer [Mon, 28 May 2018 21:29:06 +0000 (23:29 +0200)]
[VFATLIB] Fix MSVC build?

14 months ago[VFATLIB] Upgrade fsck.fat to 4.1
Pierre Schweitzer [Mon, 28 May 2018 21:18:25 +0000 (23:18 +0200)]
[VFATLIB] Upgrade fsck.fat to 4.1

Also make it easier to sync in the future.

14 months ago[FASTFAT] Lock DirResource on flush in case we're updating entry
Pierre Schweitzer [Mon, 28 May 2018 07:01:39 +0000 (09:01 +0200)]
[FASTFAT] Lock DirResource on flush in case we're updating entry

CORE-14660

14 months ago[VFATLIB] Only attempt to clear the dirty set bit in rw mode.
Pierre Schweitzer [Mon, 28 May 2018 07:00:13 +0000 (09:00 +0200)]
[VFATLIB] Only attempt to clear the dirty set bit in rw mode.

14 months ago[SYSSETUP][INF] Add the 'Registry Values' section to the default security settings...
Eric Kohl [Mon, 28 May 2018 17:26:02 +0000 (19:26 +0200)]
[SYSSETUP][INF] Add the 'Registry Values' section to the default security settings and apply it to the registry

14 months ago[USERENV] Implement CopySystemProfile Part 2 (Create the profile directory)
Eric Kohl [Mon, 28 May 2018 00:13:22 +0000 (02:13 +0200)]
[USERENV] Implement CopySystemProfile Part 2 (Create the profile directory)

14 months ago[SETUP] Remove myself from the 1st stage setup code
Eric Kohl [Sun, 27 May 2018 19:33:07 +0000 (21:33 +0200)]
[SETUP] Remove myself from the 1st stage setup code

Congratulations Hermès!
You just earned yourself full maintainership of the 1st stage setup. It's yours now. I'm out!

14 months ago[USETUP] Improve the inicache module.
Hermès Bélusca-Maïto [Sun, 21 May 2017 23:48:09 +0000 (23:48 +0000)]
[USETUP] Improve the inicache module.

From the existing IniCacheLoad() function, introduce a IniCacheLoadFromMemory() function that just does the same (initialize an INI file cache and parse the INI file), but takes the input from a memory buffer. Then, rewrite the IniCacheLoad() function to just open the file given in input, and then fall back to calling IniCacheLoadFromMemory.
The IniCacheLoadFromMemory() function will be used later.

svn path=/branches/setup_improvements/; revision=74620

14 months ago[USETUP] Improve the FileSup module.
Hermès Bélusca-Maïto [Sun, 21 May 2017 23:45:43 +0000 (23:45 +0000)]
[USETUP] Improve the FileSup module.

- Add a NtPathToDiskPartComponents() helper, that takes in input a fully qualified NT path to a file on hard disk,
  e.g.: \Device\Harddisk1\Partition2\foo\bar, and returns in output the disk number ('1'), the partition number ('2'),
  and the the path component "\foo\bar" that is after the device-harddisk-partition identifier.
- Make the OpenAndMapFile() return the file size of the opened file.

Both of these additions will be used soon.

- Turn a isspace() call into a iswspace() one.

svn path=/branches/setup_improvements/; revision=74619

14 months ago[USETUP] Code fixups after the introduction of the SetupLib.
Hermès Bélusca-Maïto [Thu, 18 May 2017 01:05:39 +0000 (01:05 +0000)]
[USETUP] Code fixups after the introduction of the SetupLib.

- Use the previously-introduced 'PreparePartitionForFormatting()' function; set the FormatState of the newly-formatted partition to Formatted.
- Remove the hackish call to CreateFileSystemList() in SelectFileSystemPage().
- Move 'TempPartition' and 'FormatState' back to USETUP.
- Put large "case"-blocks into brackets.

svn path=/branches/setup_improvements/; revision=74575
svn path=/branches/setup_improvements/; revision=74576

14 months ago[SETUPLIB] Consolidate the FsUtil and PartList modules of the SetupLib.
Hermès Bélusca-Maïto [Wed, 17 May 2017 23:31:52 +0000 (23:31 +0000)]
[SETUPLIB] Consolidate the FsUtil and PartList modules of the SetupLib.

- Add a PreparePartitionForFormatting routine that sets the partition ID depending on the chosen filesystem.
- The 'FORMATMACHINESTATE FormatState' machine-state and the 'TempPartition' members of the partition list structure is purely a USETUP convenience, so remove them from the PARTLIST structure and move them back into USETUP.
- Attempt to recognize the filesystem (set the 'FileSystem' member of PARTENTRY) of partitions we are adding into the PARTLIST list.
- Fix the return value of the SelectPartition function, which is by the way completely broken (it doesn't do what it is supposed to do; alternatively its naming is completely wrong...).

svn path=/branches/setup_improvements/; revision=74572
svn path=/branches/setup_improvements/; revision=74573

14 months ago[SETUPLIB][USETUP] Introduce a 'SetupLib' library. CORE-13544
Hermès Bélusca-Maïto [Wed, 17 May 2017 23:37:41 +0000 (23:37 +0000)]
[SETUPLIB][USETUP] Introduce a 'SetupLib' library. CORE-13544

- Create the beginnings of a "setuplib" library, whose aim is to be shared between the (currently existing) 1st-stage text-mode installer, and the (future) 1st-stage GUI installer.
- Finish to split the GenList and PartList codes into their UI part, which remain in usetup, and their algorithmic part, which go into setuplib.
- Move SetMountedDeviceValue into the PartList module.
- Split the FileSystem list code into its UI and the algorithmic part (which goes into setuplib under the name fsutil.c).
  * The algo part is meant to be able to manage the filesystems available on the running system, similarly to what is mostly done (in scattered form) in fmifs, format, chkdsk / autochk codes...
    It also manages the partition filesystem recognition, using OS routines.
  * The UI part manages the FS list as it appears on screen, showing only the possible FSes that can be used to format the selected partition (a bit similar to what we do in the shell32's drive.c, etc...).
- Adapt the calling code to these changes.
- Remove some "host" code that was dating back from the dark old times.

svn path=/branches/setup_improvements/; revision=74570
svn path=/branches/setup_improvements/; revision=74659

14 months ago[USERSRV] Romanian translation update
Bișoc George [Sun, 27 May 2018 13:19:14 +0000 (15:19 +0200)]
[USERSRV] Romanian translation update

14 months ago[USERENV] Implement CopySystemProfile Part 1 (Add a new profile subkey and values...
Eric Kohl [Sun, 27 May 2018 13:29:31 +0000 (15:29 +0200)]
[USERENV] Implement CopySystemProfile Part 1 (Add a new profile subkey and values to the profile list)

CORE-12541

14 months ago[WINETESTS] Fix build 527/head
Pierre Schweitzer [Sun, 27 May 2018 07:51:38 +0000 (09:51 +0200)]
[WINETESTS] Fix build

CORE-14656

14 months ago[HNETCFG_WINETEST] Sync with Wine Staging 3.9. CORE-14656
Amine Khaldi [Sun, 27 May 2018 03:13:26 +0000 (04:13 +0100)]
[HNETCFG_WINETEST] Sync with Wine Staging 3.9. CORE-14656

14 months ago[HNETCFG] Sync with Wine Staging 3.9. CORE-14656
Amine Khaldi [Sun, 27 May 2018 03:12:51 +0000 (04:12 +0100)]
[HNETCFG] Sync with Wine Staging 3.9. CORE-14656

14 months ago[HLINK_WINETEST] Sync with Wine Staging 3.9. CORE-14656
Amine Khaldi [Sun, 27 May 2018 03:12:13 +0000 (04:12 +0100)]
[HLINK_WINETEST] Sync with Wine Staging 3.9. CORE-14656

14 months ago[GDIPLUS_WINETEST] Sync with Wine Staging 3.9. CORE-14656
Amine Khaldi [Sun, 27 May 2018 03:11:35 +0000 (04:11 +0100)]
[GDIPLUS_WINETEST] Sync with Wine Staging 3.9. CORE-14656

14 months ago[GDIPLUS] Sync with Wine Staging 3.9. CORE-14656
Amine Khaldi [Sun, 27 May 2018 03:10:39 +0000 (04:10 +0100)]
[GDIPLUS] Sync with Wine Staging 3.9. CORE-14656

14 months ago[PSDK] Add missing GdipSetPathGradientPath() and GdipTranslatePenTransform(). CORE...
Amine Khaldi [Sun, 27 May 2018 03:09:49 +0000 (04:09 +0100)]
[PSDK] Add missing GdipSetPathGradientPath() and GdipTranslatePenTransform(). CORE-14656

14 months ago[DBGHELP] Sync with Wine Staging 3.9. CORE-14656
Amine Khaldi [Sun, 27 May 2018 03:08:32 +0000 (04:08 +0100)]
[DBGHELP] Sync with Wine Staging 3.9. CORE-14656

14 months ago[CRYPT32] Sync with Wine Staging 3.9. CORE-14656
Amine Khaldi [Sun, 27 May 2018 03:07:57 +0000 (04:07 +0100)]
[CRYPT32] Sync with Wine Staging 3.9. CORE-14656

14 months ago[COMDLG32_WINETEST] Sync with Wine Staging 3.9. CORE-14656
Amine Khaldi [Sun, 27 May 2018 03:07:12 +0000 (04:07 +0100)]
[COMDLG32_WINETEST] Sync with Wine Staging 3.9. CORE-14656

14 months ago[COMDLG32] Sync with Wine Staging 3.9. CORE-14656
Amine Khaldi [Sun, 27 May 2018 03:06:36 +0000 (04:06 +0100)]
[COMDLG32] Sync with Wine Staging 3.9. CORE-14656

14 months ago[INCLUDE/WINE][USER32_APITEST] Add ARRAY_SIZE to test.h and remove it from RealGetWin...
Amine Khaldi [Sun, 27 May 2018 03:05:33 +0000 (04:05 +0100)]
[INCLUDE/WINE][USER32_APITEST] Add ARRAY_SIZE to test.h and remove it from RealGetWindowClass.c. CORE-14656

14 months ago[PSDK] Add missing OFN_EX_NOPLACESBAR. CORE-14656
Amine Khaldi [Sun, 27 May 2018 03:03:38 +0000 (04:03 +0100)]
[PSDK] Add missing OFN_EX_NOPLACESBAR. CORE-14656

14 months ago[AVIFIL32] Sync with Wine Staging 3.9. CORE-14656
Amine Khaldi [Sun, 27 May 2018 03:02:26 +0000 (04:02 +0100)]
[AVIFIL32] Sync with Wine Staging 3.9. CORE-14656

14 months ago[QUARTZ_WINETEST] Sync with Wine Staging 3.9. CORE-14656
Amine Khaldi [Sun, 27 May 2018 03:01:18 +0000 (04:01 +0100)]
[QUARTZ_WINETEST] Sync with Wine Staging 3.9. CORE-14656

14 months ago[QUARTZ] Sync with Wine Staging 3.9. CORE-14656
Amine Khaldi [Sun, 27 May 2018 03:00:39 +0000 (04:00 +0100)]
[QUARTZ] Sync with Wine Staging 3.9. CORE-14656

14 months ago[MSDMO] Sync with Wine Staging 3.9. CORE-14656
Amine Khaldi [Sun, 27 May 2018 02:59:47 +0000 (03:59 +0100)]
[MSDMO] Sync with Wine Staging 3.9. CORE-14656

14 months ago[DMUSIC] Sync with Wine Staging 3.9. CORE-14656
Amine Khaldi [Sun, 27 May 2018 02:59:04 +0000 (03:59 +0100)]
[DMUSIC] Sync with Wine Staging 3.9. CORE-14656

14 months ago[DINPUT_WINETEST] Sync with Wine Staging 3.9. CORE-14656
Amine Khaldi [Sun, 27 May 2018 02:58:11 +0000 (03:58 +0100)]
[DINPUT_WINETEST] Sync with Wine Staging 3.9. CORE-14656

14 months ago[DINPUT] Sync with Wine Staging 3.9. CORE-14656
Amine Khaldi [Sun, 27 May 2018 02:57:38 +0000 (03:57 +0100)]
[DINPUT] Sync with Wine Staging 3.9. CORE-14656

14 months ago[DEVENUM_WINETEST] Sync with Wine Staging 3.9. CORE-14656
Amine Khaldi [Sun, 27 May 2018 02:56:54 +0000 (03:56 +0100)]
[DEVENUM_WINETEST] Sync with Wine Staging 3.9. CORE-14656

14 months ago[DEVENUM] Sync with Wine Staging 3.9. CORE-14656
Amine Khaldi [Sun, 27 May 2018 02:56:13 +0000 (03:56 +0100)]
[DEVENUM] Sync with Wine Staging 3.9. CORE-14656

14 months ago[PSDK] Add missing DRV_QUERYFUNCTIONINSTANCEID. CORE-14656
Amine Khaldi [Sun, 27 May 2018 02:55:03 +0000 (03:55 +0100)]
[PSDK] Add missing DRV_QUERYFUNCTIONINSTANCEID. CORE-14656

14 months ago[D3DX9_24 => 43] Sync with Wine Staging 3.9. CORE-14656
Amine Khaldi [Sun, 27 May 2018 02:54:15 +0000 (03:54 +0100)]
[D3DX9_24 => 43] Sync with Wine Staging 3.9. CORE-14656

14 months ago[D3DRM] Sync with Wine Staging 3.9. CORE-14656
Amine Khaldi [Sun, 27 May 2018 02:53:02 +0000 (03:53 +0100)]
[D3DRM] Sync with Wine Staging 3.9. CORE-14656

14 months ago[D3D8][D3D9][DDRAW][WINED3D] Sync with Wine Staging 3.9. CORE-14656
Amine Khaldi [Sun, 27 May 2018 02:52:04 +0000 (03:52 +0100)]
[D3D8][D3D9][DDRAW][WINED3D] Sync with Wine Staging 3.9. CORE-14656

14 months ago[AMSTREAM] Sync with Wine Staging 3.9. CORE-14656
Amine Khaldi [Sun, 27 May 2018 02:50:07 +0000 (03:50 +0100)]
[AMSTREAM] Sync with Wine Staging 3.9. CORE-14656

14 months ago[REG_WINETEST] Sync with Wine Staging 3.9. CORE-14656
Amine Khaldi [Sun, 27 May 2018 02:49:14 +0000 (03:49 +0100)]
[REG_WINETEST] Sync with Wine Staging 3.9. CORE-14656

14 months ago[REG] Sync with Wine Staging 3.9. CORE-14656
Amine Khaldi [Sun, 27 May 2018 02:48:33 +0000 (03:48 +0100)]
[REG] Sync with Wine Staging 3.9. CORE-14656

14 months ago[USETUP] Similarly to what was done for GenLists, factor out the UI code from the...
Hermès Bélusca-Maïto [Mon, 15 May 2017 19:41:18 +0000 (19:41 +0000)]
[USETUP] Similarly to what was done for GenLists, factor out the UI code from the partition list code.

This will allow to reuse it for the 1st-stage GUI setup too, while using another UI representation.
Add also two partition iterator functions: GetNextPartition and GetPrevPartition.

svn path=/branches/setup_improvements/; revision=74554

14 months ago[USETUP] Factor out the UI-specific code from the GenList code, and wrap it inside...
Hermès Bélusca-Maïto [Mon, 15 May 2017 16:22:18 +0000 (16:22 +0000)]
[USETUP] Factor out the UI-specific code from the GenList code, and wrap it inside a GENERIC_LIST_UI structure.

The aim here is to decouple the UI-specific code from code that can be used by both the text-mode USETUP and a future 1st-stage GUI setup.
Indeed, the GenLists can actually be used in the 1st-stage GUI; and their contents be displayed inside ListBoxes/ListViews... (this is just one example amongst others).

Additionally (in usetup.c):
- Make both FormatPartitionPage and CheckFileSystemPage return PAGE_NUMBERs.
- Improve a couple of comments.

svn path=/branches/setup_improvements/; revision=74553

14 months ago[USETUP] Additions for generic lists.
Hermès Bélusca-Maïto [Mon, 15 May 2017 01:43:28 +0000 (01:43 +0000)]
[USETUP] Additions for generic lists.

- Allow retrieving the number of items existing in the list;
- Fix the name of some function parameters.

svn path=/branches/setup_improvements/; revision=74547

14 months ago[USETUP] Additions for the PartList code.
Hermès Bélusca-Maïto [Sat, 13 May 2017 16:40:30 +0000 (16:40 +0000)]
[USETUP] Additions for the PartList code.

- Document more some of the fields in the PARTENTRY, DISKETNRY and PARTLIST structures;
- Remove the redundant members "SystemDisk", "OriginalSystemDisk" and "TempDisk" in PARTLIST as these can be consistently deduced from the corresponding (Original)(System)(Temp)Partition members
  (note that we however keep "CurrentDisk" alongside "CurrentPartition", see the comment in the code why we do it so).
- Adjust the rest of the code to take the removal of the redundant members into account. The 2nd parameter of GetNextUnformattedPartition() and GetNextUncheckedPartition() is now really optional.
- Introduce a SetPartitionType() helper to simplify the code that sets the partition type, which also automatically adjusts other internal variables of said partition in accordance.
- "Mounted" logical drives can have assigned letters too, registered in \DosDevices\.

svn path=/branches/setup_improvements/; revision=74532

14 months ago[USETUP] Code improvements for PartList.
Hermès Bélusca-Maïto [Sat, 13 May 2017 16:32:53 +0000 (16:32 +0000)]
[USETUP] Code improvements for PartList.

- Use explicit ansi string safe functions (where they are used ansi, but not explicitely);
- Add (old-school) function parameters annotations;
- Use PARTITION_ENTRY_UNUSED where needed (instead of hardcoding its value);
- Turn some functions static to this module;
- Turn the 2nd parameter of both GetNextUnformattedPartition() and GetNextUncheckedPartition() optional (for next commit);
- Improve some comments;
- Use NT types.

svn path=/branches/setup_improvements/; revision=74531

14 months ago[USETUP] Enhancements for filesystem utility functions.
Hermès Bélusca-Maïto [Sat, 13 May 2017 16:20:10 +0000 (16:20 +0000)]
[USETUP] Enhancements for filesystem utility functions.

- Introduce code that detects the filesystem of a (mounted?) partition, using NtQueryVolumeInformationFile() with FileFsAttributeInformation class,
  aka. rely on ReactOS itself (kernel, storage stack, filesystem drivers...) to recognize the FS on a partition that should normally be seen by the system.
  This currently half-works for whatever reason (to be insvestigated), while it works on Windows.
- Fix few comments & a function parameter name.
- Use NT string pointer types.

svn path=/branches/setup_improvements/; revision=74529

14 months ago[USETUP] Add & modify some file utility functions that are going to be used next.
Hermès Bélusca-Maïto [Sat, 13 May 2017 16:13:49 +0000 (16:13 +0000)]
[USETUP] Add & modify some file utility functions that are going to be used next.

- ConcatPaths that concatenates paths (or a path and a file name);
- OpenAndMapFile (resp. UnMapFile), whose purpose is to open a file and map it in memory (resp. unmap it from memory).
- Add extra optional parameters to DoesPathExist and DoesFileExist: an optional "RootDirectory" handle and, for DoesFileExist only, an optional PathName.
- Close the opened file handles only on success.

svn path=/branches/setup_improvements/; revision=74528
svn path=/branches/setup_improvements/; revision=74538
svn path=/branches/setup_improvements/; revision=74549

14 months ago[USETUP] Fix some spacings in the french translation.
Hermès Bélusca-Maïto [Wed, 17 May 2017 23:37:41 +0000 (23:37 +0000)]
[USETUP] Fix some spacings in the french translation.

svn path=/branches/setup_improvements/; revision=74574

14 months ago[USETUP] Code formatting only.
Hermès Bélusca-Maïto [Sat, 13 May 2017 16:23:08 +0000 (16:23 +0000)]
[USETUP] Code formatting only.

svn path=/branches/setup_improvements/; revision=74530

14 months ago[MSV1_0] Add logon support for the LocalService and NetworkService accounts
Eric Kohl [Sat, 26 May 2018 16:42:31 +0000 (18:42 +0200)]
[MSV1_0] Add logon support for the LocalService and NetworkService accounts

14 months ago[FASTFAT] Lock DirResource when modifying an entry on disk.
Pierre Schweitzer [Sat, 26 May 2018 15:12:03 +0000 (17:12 +0200)]
[FASTFAT] Lock DirResource when modifying an entry on disk.

Likely not optimal, but fixes some races conditions where
the directory is uninit in the middle of the write.

14 months ago[MSPAINT] When clicking selection, invalidate _and_ repaint Scroll Client _and_ Image...
Benedikt Freisen [Sat, 26 May 2018 11:23:20 +0000 (13:23 +0200)]
[MSPAINT] When clicking selection, invalidate _and_ repaint Scroll Client _and_ Image Area

Previously, the canvas disappeared when a selection was clicked until the mouse was moved.

CORE-13288