summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--mate-session/gsm-systemd.c20
-rw-r--r--mate-session/test-client-dbus.c2
2 files changed, 16 insertions, 6 deletions
diff --git a/mate-session/gsm-systemd.c b/mate-session/gsm-systemd.c
index dbe8ea0..3804fed 100644
--- a/mate-session/gsm-systemd.c
+++ b/mate-session/gsm-systemd.c
@@ -547,7 +547,7 @@ gsm_systemd_set_session_idle (GsmSystemd *manager,
gboolean is_idle)
{
GError *error;
- char *session_path;
+ char *session_path = NULL;
DBusMessage *message;
DBusMessage *reply;
DBusError dbus_error;
@@ -564,6 +564,8 @@ gsm_systemd_set_session_idle (GsmSystemd *manager,
gsm_systemd_get_session_path (dbus_g_connection_get_connection (manager->priv->dbus_connection), &session_path);
+ g_return_if_fail (session_path != NULL);
+
g_debug ("Updating Systemd idle status: %d", is_idle);
message = dbus_message_new_method_call (SD_NAME,
session_path,
@@ -600,7 +602,9 @@ gsm_systemd_can_switch_user (GsmSystemd *manager)
{
GError *error;
char *session_id = NULL;
+#ifdef HAVE_SYSTEMD
char *seat_id = NULL;
+#endif
int ret = 0;
error = NULL;
@@ -811,7 +815,7 @@ gsm_systemd_attempt_hibernate (GsmSystemd *manager)
g_warning ("Could not connect to Systemd: %s",
error->message);
g_error_free (error);
- return FALSE;
+ return;
}
res = dbus_g_proxy_call_with_timeout (manager->priv->sd_proxy,
@@ -825,7 +829,7 @@ gsm_systemd_attempt_hibernate (GsmSystemd *manager)
g_warning ("Could not make DBUS call: %s",
error->message);
g_error_free (error);
- return FALSE;
+ return;
}
}
@@ -842,7 +846,7 @@ gsm_systemd_attempt_suspend (GsmSystemd *manager)
g_warning ("Could not connect to Systemd: %s",
error->message);
g_error_free (error);
- return FALSE;
+ return;
}
res = dbus_g_proxy_call_with_timeout (manager->priv->sd_proxy,
@@ -856,7 +860,7 @@ gsm_systemd_attempt_suspend (GsmSystemd *manager)
g_warning ("Could not make DBUS call: %s",
error->message);
g_error_free (error);
- return FALSE;
+ return;
}
}
@@ -864,9 +868,11 @@ gchar *
gsm_systemd_get_current_session_type (GsmSystemd *manager)
{
GError *gerror;
- int session_id;
+ gchar *session_id;
gchar *session_class = NULL;
+#ifdef HAVE_SYSTEMD
int res;
+#endif
gerror = NULL;
@@ -890,6 +896,8 @@ gsm_systemd_get_current_session_type (GsmSystemd *manager)
g_warning ("Could not get Systemd session class!");
return NULL;
}
+
+ g_free (session_id);
#endif
return session_class;
diff --git a/mate-session/test-client-dbus.c b/mate-session/test-client-dbus.c
index fa888ed..8f8fbe9 100644
--- a/mate-session/test-client-dbus.c
+++ b/mate-session/test-client-dbus.c
@@ -240,7 +240,9 @@ main (int argc,
g_log_set_always_fatal (G_LOG_LEVEL_ERROR | G_LOG_LEVEL_CRITICAL | G_LOG_LEVEL_WARNING);
+#if !GLIB_CHECK_VERSION (2, 36, 0)
g_type_init ();
+#endif
res = session_manager_connect ();
if (! res) {