mirror of
https://gitlab.freedesktop.org/NetworkManager/NetworkManager.git
synced 2026-02-11 07:10:36 +01:00
core: add code comment to nm_utils_read_link_absolute() and minor cleanup
This commit is contained in:
parent
d060b7b379
commit
5345cac151
1 changed files with 9 additions and 5 deletions
|
|
@ -1114,13 +1114,17 @@ nm_utils_read_link_absolute (const char *link_file, GError **error)
|
|||
return ln;
|
||||
|
||||
dirname = g_path_get_dirname (link_file);
|
||||
if (!g_path_is_absolute (link_file)) {
|
||||
gs_free char *dirname_rel = dirname;
|
||||
if (!g_path_is_absolute (dirname)) {
|
||||
gs_free char *current_dir = g_get_current_dir ();
|
||||
|
||||
dirname = g_build_filename (current_dir, dirname_rel, NULL);
|
||||
}
|
||||
ln_abs = g_build_filename (dirname, ln, NULL);
|
||||
/* @link_file argument was not an absolute path in the first place.
|
||||
* That actually may be a bug, because the CWD is not well defined
|
||||
* in most cases. Anyway, apparently we were able to load the file
|
||||
* even from a relative path. So, when making the link absolute, we
|
||||
* also need to prepend the CWD. */
|
||||
ln_abs = g_build_filename (current_dir, dirname, ln, NULL);
|
||||
} else
|
||||
ln_abs = g_build_filename (dirname, ln, NULL);
|
||||
g_free (dirname);
|
||||
g_free (ln);
|
||||
return ln_abs;
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue