[glib] _g_dbus_get_machine_id(): check /etc/machine-id too
- From: Matthias Clasen <matthiasc src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [glib] _g_dbus_get_machine_id(): check /etc/machine-id too
- Date: Fri, 18 Nov 2011 04:10:35 +0000 (UTC)
commit dc89b51c2d71088c014ec94572629aabf143310e
Author: Alexandre Rostovtsev <tetromino gentoo org>
Date: Wed Nov 16 15:05:46 2011 +0000
_g_dbus_get_machine_id(): check /etc/machine-id too
machine-id can be in /etc or in /var/lib/dbus.
[amended with slightly revised error handling -smcv]
Bug: https://bugzilla.gnome.org/show_bug.cgi?id=663928
gio/gdbusprivate.c | 13 +++++++++++--
1 files changed, 11 insertions(+), 2 deletions(-)
---
diff --git a/gio/gdbusprivate.c b/gio/gdbusprivate.c
index 55ac883..9149aab 100644
--- a/gio/gdbusprivate.c
+++ b/gio/gdbusprivate.c
@@ -1983,17 +1983,26 @@ gchar *
_g_dbus_get_machine_id (GError **error)
{
gchar *ret;
+ GError *first_error;
/* TODO: use PACKAGE_LOCALSTATEDIR ? */
ret = NULL;
+ first_error = NULL;
if (!g_file_get_contents ("/var/lib/dbus/machine-id",
&ret,
NULL,
- error))
+ &first_error) &&
+ !g_file_get_contents ("/etc/machine-id",
+ &ret,
+ NULL,
+ NULL))
{
- g_prefix_error (error, _("Unable to load /var/lib/dbus/machine-id: "));
+ g_propagate_prefixed_error (error, first_error,
+ _("Unable to load /var/lib/dbus/machine-id or /etc/machine-id: "));
}
else
{
+ /* ignore the error from the first try, if any */
+ g_clear_error (&first_error);
/* TODO: validate value */
g_strstrip (ret);
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]