core: add code comment to nm_utils_read_link_absolute() and minor cleanup

This commit is contained in:
Thomas Haller 2018-09-27 13:51:55 +02:00
parent d060b7b379
commit 5345cac151

View file

@ -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;