mirror of
https://gitlab.gnome.org/GNOME/glib.git
synced 2024-11-11 03:46:17 +01:00
gio-tool-info: Prevent criticals if mount options are not available
NULL is valid return value for the g_unix_mount_get_options function because mount options are currently provided only by libmount implementation. However, the gio tool passes the returned value to the g_strescape function without checking, which produces the following critical warning: GLib-CRITICAL **: 13:47:15.294: g_strescape: assertion 'source != NULL' failed Let's add the missing check to prevent the critical warnings.
This commit is contained in:
parent
a28b3c9dd6
commit
c311b9947b
@ -182,7 +182,8 @@ show_info (GFile *file, GFileInfo *info)
|
|||||||
gchar *root_string = NULL;
|
gchar *root_string = NULL;
|
||||||
gchar *mount;
|
gchar *mount;
|
||||||
gchar *fs;
|
gchar *fs;
|
||||||
gchar *options;
|
const gchar *options;
|
||||||
|
gchar *options_string = NULL;
|
||||||
|
|
||||||
device = g_strescape (g_unix_mount_get_device_path (entry), NULL);
|
device = g_strescape (g_unix_mount_get_device_path (entry), NULL);
|
||||||
root = g_unix_mount_get_root_path (entry);
|
root = g_unix_mount_get_root_path (entry);
|
||||||
@ -194,16 +195,22 @@ show_info (GFile *file, GFileInfo *info)
|
|||||||
}
|
}
|
||||||
mount = g_strescape (g_unix_mount_get_mount_path (entry), NULL);
|
mount = g_strescape (g_unix_mount_get_mount_path (entry), NULL);
|
||||||
fs = g_strescape (g_unix_mount_get_fs_type (entry), NULL);
|
fs = g_strescape (g_unix_mount_get_fs_type (entry), NULL);
|
||||||
options = g_strescape (g_unix_mount_get_options (entry), NULL);
|
|
||||||
|
options = g_unix_mount_get_options (entry);
|
||||||
|
if (options != NULL)
|
||||||
|
{
|
||||||
|
options_string = g_strescape (options, NULL);
|
||||||
|
}
|
||||||
|
|
||||||
g_print (_("unix mount: %s%s %s %s %s\n"), device,
|
g_print (_("unix mount: %s%s %s %s %s\n"), device,
|
||||||
root_string ? root_string : "", mount, fs, options);
|
root_string ? root_string : "", mount, fs,
|
||||||
|
options_string ? options_string : "");
|
||||||
|
|
||||||
g_free (device);
|
g_free (device);
|
||||||
g_free (root_string);
|
g_free (root_string);
|
||||||
g_free (mount);
|
g_free (mount);
|
||||||
g_free (fs);
|
g_free (fs);
|
||||||
g_free (options);
|
g_free (options_string);
|
||||||
|
|
||||||
g_unix_mount_free (entry);
|
g_unix_mount_free (entry);
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user