diff options
author | Ron Yorston <rmy@pobox.com> | 2019-03-28 12:52:44 +0000 |
---|---|---|
committer | Ron Yorston <rmy@pobox.com> | 2019-03-28 13:09:50 +0000 |
commit | 548ec7045bc7c80eaf03e92f390d1da2c9e9cd86 (patch) | |
tree | b4c0102539c8889eeeec9eef8afa863510c7592b /include | |
parent | 215e01e70f13f28d1a4dbe297f095b25de04ee21 (diff) | |
download | busybox-w32-548ec7045bc7c80eaf03e92f390d1da2c9e9cd86.tar.gz busybox-w32-548ec7045bc7c80eaf03e92f390d1da2c9e9cd86.tar.bz2 busybox-w32-548ec7045bc7c80eaf03e92f390d1da2c9e9cd86.zip |
win32: interpret absolute paths as relative to %SYSTEMDRIVE%
BusyBox contains hardcoded references to absolute paths which
are unique in the *nix world but on Microsoft Windows are
interpreted as being on the current drive. To make these unique
again consider them to be relative to %SYSTEMDRIVE%.
Support this by adding functions to:
- determine the system drive (not using the environment variable);
- change a process's current directory to the root of the system drive;
- make relative paths absolute before changing directory (if needed).
The following applications have been modified:
- ash references /etc/profile from the system drive;
- dpkg places its data store on and installs files to the system drive;
- rpm installs files to the system drive;
- man looks for configuration files and man pages on the system drive.
See GitHub issue #158.
Diffstat (limited to 'include')
-rw-r--r-- | include/mingw.h | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/include/mingw.h b/include/mingw.h index 7c9423cad..d77a9beb9 100644 --- a/include/mingw.h +++ b/include/mingw.h | |||
@@ -525,3 +525,6 @@ void hide_console(void); | |||
525 | 525 | ||
526 | int unc_root_len(const char *dir); | 526 | int unc_root_len(const char *dir); |
527 | int root_len(const char *path); | 527 | int root_len(const char *path); |
528 | char *get_system_drive(void); | ||
529 | int chdir_system_drive(void); | ||
530 | char *xabsolute_path(char *path); | ||