tree-wide: port all code to use safe_getcwd()
This commit is contained in:
@@ -110,6 +110,7 @@ int safe_getcwd(char **ret) {
|
||||
|
||||
int path_make_absolute_cwd(const char *p, char **ret) {
|
||||
char *c;
|
||||
int r;
|
||||
|
||||
assert(p);
|
||||
assert(ret);
|
||||
@@ -122,9 +123,9 @@ int path_make_absolute_cwd(const char *p, char **ret) {
|
||||
else {
|
||||
_cleanup_free_ char *cwd = NULL;
|
||||
|
||||
cwd = get_current_dir_name();
|
||||
if (!cwd)
|
||||
return negative_errno();
|
||||
r = safe_getcwd(&cwd);
|
||||
if (r < 0)
|
||||
return r;
|
||||
|
||||
c = strjoin(cwd, "/", p);
|
||||
}
|
||||
|
||||
+3
-3
@@ -277,9 +277,9 @@ int main(int argc, char *argv[]) {
|
||||
if (!arg_machine) {
|
||||
_cleanup_free_ char *cwd = NULL;
|
||||
|
||||
cwd = get_current_dir_name();
|
||||
if (!cwd) {
|
||||
r = log_error_errno(errno, "Cannot determine current working directory: %m");
|
||||
r = safe_getcwd(&cwd);
|
||||
if (r < 0) {
|
||||
log_error_errno(r, "Cannot determine current working directory: %m");
|
||||
goto finish;
|
||||
}
|
||||
|
||||
|
||||
+5
-2
@@ -2163,8 +2163,11 @@ static int determine_names(void) {
|
||||
|
||||
if (!arg_ephemeral)
|
||||
arg_read_only = arg_read_only || i->read_only;
|
||||
} else
|
||||
arg_directory = get_current_dir_name();
|
||||
} else {
|
||||
r = safe_getcwd(&arg_directory);
|
||||
if (r < 0)
|
||||
return log_error_errno(r, "Failed to determine current directory: %m");
|
||||
}
|
||||
|
||||
if (!arg_directory && !arg_image) {
|
||||
log_error("Failed to determine path, please use -D or -i.");
|
||||
|
||||
@@ -326,7 +326,7 @@ static void test_readlink_and_make_absolute(void) {
|
||||
free(r);
|
||||
assert_se(unlink(name_alias) >= 0);
|
||||
|
||||
assert_se(pwd = get_current_dir_name());
|
||||
assert_se(safe_getcwd(&pwd) >= 0);
|
||||
|
||||
assert_se(chdir(tempdir) >= 0);
|
||||
assert_se(symlink(name2, name_alias) >= 0);
|
||||
|
||||
Reference in New Issue
Block a user