[USETUP]: Sync with tfaber's r75536.
[REACTOS]: Adapt the 1st-stage GUI setup to compile with the setuplib.
    • -0
    • +71
[USETUP]: Sync with hpoussin's r75532, and add the corresponding INF_FreeData().
[USETUP]: Close the txtsetup.sif file at the end of the operations.
[USETUP]: Addendum to 75537.
[SETUPLIB]: Fix compilation errors when using these headers with usetup (that doesn't use setupapi.dll) and "reactos" (the 1st-stage GUI installer, which uses setupapi.dll).
[EVTLIB]: Allow specifying a memory allocation tag when freeing the allocated buffers (functionality similar to the Ex**WithTag kernel functions).

[EVENTLOG]: Use the previous functionality; use also the internal LogfpAlloc() / LogfpFree() functions when dealing with buffers related to event log files.

    • -18
    • +17
    • -4
    • +7
[USETUP]: Move the files in ./interface/ back into the main directory, since (almost) all of the usetup source files concerns the user interface of the setup program...
[USETUP]: Fix the keyboard selection in the list of OS installations that can be updated.
[SYSSETUP]: Following r75518, we use the $winnt$.inf file (created in System32 by the 1st-stage installer) as the setup information file for the 2nd-stage setup for:

- retrieving the installation source media path;

- retrieving the unattended information that was copied from the unattend.inf file from the installation source media.

The installation source media path is converted from NT format to Win32 format for usage with Win32 functions and storage in the registry: this is done by GetInstallSourceWin32(),

which replaces the hackish GetRosInstallCD() function.

The $winnt$.inf file is also updated, and the values "SourcePath" and "ServicePackSourcePath" in HKLM\Software\Microsoft\Windows\CurrentVersion\Setup are created / updated.

In addition, delete the created fonts where needed.

[SYSSETUP]: Use ARRAYSIZE / _countof instead of sizeof ratios.
[SYSSETUP]: Code formatting.
[USETUP]: NT RTL thread functions use 'NULL' (instead of 'INVALID_HANDLE_VALUE' which is a Win32 thing) for thread handles that are "invalid" / uninitialized.
[USETUP][SETUPLIB]: Code refactoring:

- Move several global setup variables into a structure "USETUP_DATA", similar to the syssetup structure "SETUPDATA"

(or the WIP 1st-stage installer structure of the same name), so that these variables can be set easily by different helper setup functions;

- Move CheckUnattendedSetup() and GetSourcePaths() to setuplib and make CheckUnattendedSetup() use the USETUP_DATA structure;

- Add a LoadSetupInf() function that loads the txtsetup.sif file (factoring out the corresponding code in usetup);

- Add a InstallSetupInfFile() function (that I'll certainly rename later on) whose purpose is to create a valid "$winnt$.inf" setup installation file

in the ReactOS\system32 directory, which should help the 2nd-stage installer to correctly retrieve the source installation media we used during 1st-stage,

and contain the unattended setup lines copied from unattend.inf. This is done in a Windows-compatible way.

- Add the lib/infsupp.c and lib/setuplib.c to compilation.

    • -0
    • +512
[USETUP]: Minor code formatting only.
[USETUP]: Sprinkle some INF_FreeData() calls to balance the INF_GetData() / INF_GetDataField() calls. They currently do nothing, since the getter functions don't actually capture (copy) the strings but merely return pointers to read-only strings. But the calls are placed here for consistency, because if one day the getters implementation is changed to capture the strings, then it would now be needed to free the allocated buffers.

In addition, fix a buggy call to INF_GetData() -- should be instead INF_GetDataField() -- in AddSectionToCopyQueue().

[USETUP][SETUPLIB]: Move some INF-related code from usetup to the setuplib.

- Move the generic INF_GetDataField() and INF_GetData() helpers to setuplib, and rework them a bit so that they explicitly call setupapi functions (or implementations thereof when being used in usetup);

- Rework the headers in accordance;

- and Fix compilation in lib/registry.c .

    • -0
    • +119
[USETUP]: Comment out SetupQueueCopyWNew() declaration which is not used at all. Remove unnecessary casts in the INF_OpenBufferedFileA() call.
[SETUPLIB]: Introduce defines for size units.

[USETUP]: Use them in the code.

[SETUPLIB]: IniCacheSave(): use the OBJ_CASE_INSENSITIVE flag.
[BOOTDATA]: Update hivesetup.inf
Sync with trunk r75504.
  1. … 213 more files in changeset.
[SYSSETUP]: Fix a typo.
    • -1
    • +1
[FREELDR][INFLIB]: It is perfectly correct to retrieve the field of index == 0 of an INF line, by using the InfGetStringField() helper (corresponding to the SetupGetStringField() API).
    • -1
    • +1
[ATL]: - Both the CAtlList class and its helper class CNode do not support copy construction. - Remove a redundant call to GetFreeNode().


    • -1
    • +11
Sync branch with trunk r75394.
  1. … 127 more files in changeset.
[UNATTEND]: Move a comment sign ';' to a better place.
[REACTOS]: Russian translation update part 2/2 by amber: time-zones.
    • -1
    • +83
[REACTOS]: Russian translation update part 1/2 by amber.


    • -2
    • +2
    • -2
    • +2
    • -3
    • +3
    • -2
    • +2
    • -6
    • +6
    • -0
    • +54
    • -1
    • +1
[CRT]: Add a missing _munlock call, caught by Serge Gautherie.


    • -1
    • +2