diff --git a/lib/configure.c b/lib/configure.c index 7b301aaba96..7e7ab5c677e 100644 --- a/lib/configure.c +++ b/lib/configure.c @@ -70,6 +70,9 @@ xbps_configure_pkg(const char *pkgname, const char *version) return errno; if (access(buf, R_OK) == 0) { + if (strcmp(rootdir, "") == 0) + rootdir = "/"; + if (chdir(rootdir) == -1) return errno; diff --git a/lib/unpack.c b/lib/unpack.c index 30c96b9e134..36a34ff93ca 100644 --- a/lib/unpack.c +++ b/lib/unpack.c @@ -141,6 +141,9 @@ unpack_archive_fini(struct archive *ar, prop_dictionary_t pkg, rootdir = xbps_get_rootdir(); flags = xbps_get_flags(); + if (strcmp(rootdir, "") == 0) + rootdir = "/"; + if (chdir(rootdir) == -1) return errno;