reactos/base/setup/lib
Hermès Bélusca-Maïto 3ddb05d443
[SETUPLIB] GetSourcePaths(): Fix determination of the installation source path.
Refine the algorithm introduced in commit c560342f08 (r75667, r75676),
whereby the installation source path is based on the full image file path
of the installer program, and of the \SystemRoot symlink.

Also reverts commit 6f389a35db "Add a workaround for installing from USB drives"
CORE-17818

+ SAL2-annotate and add Doxygen comments.

----

In case the \SystemRoot full path prefixes the image file path,
use the resolved \SystemRoot as the installation source path.
Otherwise, use the image file path.

The \SystemRoot symlink target resolution needs full path reparsing,
because it can reference other symlinks. This is what happens, for
example when booting the installation from a removable hard-disk.
We can have:

         \SystemRoot ---> \Device\Harddisk1\Partition1\ReactOS
and:     \Device\Harddisk1\Partition1 ---> \Device\HarddiskVolume2
etc.
and we wish to resolve \SystemRoot to: \Device\HarddiskVolume2\ReactOS
instead of keeping the former version (using Harddisk1\Partition1).

We then verify whether it prefixes the image file path, which is
a fully reparsed path.
2024-10-23 23:19:58 +02:00
..
lang [SETUPLIB][USETUP] Convert internal MUI_LAYOUTS data to numbers. 2024-02-09 21:28:23 +01:00
spapisup [SETUPLIB][REACTOS][USETUP] Further improve the interfacing with INF and File-Queue APIs. 2018-11-01 18:55:43 +01:00
utils [SETUPLIB] Add helpers to determine whether a disk is partitioned as a "super-floppy" (#7310) 2024-10-20 16:51:23 +02:00
bootcode.c [SETUPLIB] Code re-organization in bootsup.c and fsutil.c. 2020-10-18 20:56:16 +02:00
bootcode.h [SETUPLIB] Code re-organization in bootsup.c and fsutil.c. 2020-10-18 20:56:16 +02:00
bootsup.c [SETUPLIB][USETUP] Introduce a bootloader installation helper (#7310) 2024-10-20 16:51:25 +02:00
bootsup.h [SETUPLIB][USETUP] Introduce a bootloader installation helper (#7310) 2024-10-20 16:51:25 +02:00
CMakeLists.txt [SETUPLIB][REACTOS][USETUP] Split FS-volume-specific functionality from partitions (#7258) 2024-08-26 16:42:47 +02:00
errorcode.h [USETUP] Don't error out in case one tries to "delete" empty partition space. 2023-11-19 16:44:34 +01:00
fsutil.c [SETUPLIB][REACTOS][USETUP] Split FS-volume-specific functionality from partitions (#7258) 2024-08-26 16:42:47 +02:00
fsutil.h [SETUPLIB][REACTOS][USETUP] Split FS-volume-specific functionality from partitions (#7258) 2024-08-26 16:42:47 +02:00
install.c [SETUPLIB] Make the settings' Process* functions take an actual value instead of a GENERIC_LIST 2024-02-18 16:30:46 +01:00
install.h [SETUPLIB][USETUP] Move all the code that performs file copying into the SETUPLIB. 2018-11-05 23:18:47 +01:00
mui.c [SETUPLIB][USETUP] Convert MUI_LANGUAGE GeoID values to numbers. 2024-02-09 22:33:30 +01:00
mui.h [SETUPLIB][USETUP] Convert MUI_LANGUAGE GeoID values to numbers. 2024-02-09 22:33:30 +01:00
muifonts.h [NTGDI][FREETYPE][SETUP][INF] Support FontLink (#7009) 2024-06-30 22:15:34 +09:00
muilanguages.h [SETUPLIB][USETUP] Convert MUI_LANGUAGE GeoID values to numbers. 2024-02-09 22:33:30 +01:00
precomp.h [SETUPLIB] Move the files that implement utility functions into their own subdirectory. The files remaining in the main directory implement setup procedures that use the utility functions. 2018-10-27 22:09:34 +02:00
registry.c [SETUP] Silence some noisy DPRINT1 2019-01-01 10:08:02 +01:00
registry.h [SETUPLIB][USETUP] Move the registry-update procedure into setuplib. 2018-10-28 14:42:00 +01:00
settings.c [SETUPLIB] Make the settings' Process* functions take an actual value instead of a GENERIC_LIST 2024-02-18 16:30:46 +01:00
settings.h [SETUPLIB] Make the settings' Process* functions take an actual value instead of a GENERIC_LIST 2024-02-18 16:30:46 +01:00
setuplib.c [SETUPLIB] GetSourcePaths(): Fix determination of the installation source path. 2024-10-23 23:19:58 +02:00
setuplib.h [SETUPLIB] GetSourcePaths(): Fix determination of the installation source path. 2024-10-23 23:19:58 +02:00
substset.h [USETUP][BOOTDATA] Include optional CJK standard fonts (#2336) 2020-02-14 10:47:20 +09:00