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
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
bootcode.h
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
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
registry.c
registry.h
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