[gnome-shell] pokit-agent: fix segfault when we we fail to get the current session
- From: Marc-Antoine Perennou <marcop src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-shell] pokit-agent: fix segfault when we we fail to get the current session
- Date: Sat, 18 Feb 2012 19:28:38 +0000 (UTC)
commit b67138b5ae677e8af9f7fa978f812438e1c4b912
Author: Marc-Antoine Perennou <Marc-Antoine Perennou com>
Date: Fri Feb 17 20:48:25 2012 +0100
pokit-agent: fix segfault when we we fail to get the current session
When using systemd, polkit doesn't set the error even when returning false in g_initable_init
Signed-off-by: Marc-Antoine Perennou <Marc-Antoine Perennou com>
https://bugzilla.gnome.org/show_bug.cgi?id=670319
src/shell-polkit-authentication-agent.c | 17 ++++++++++++-----
1 files changed, 12 insertions(+), 5 deletions(-)
---
diff --git a/src/shell-polkit-authentication-agent.c b/src/shell-polkit-authentication-agent.c
index ede4fd9..472dea5 100644
--- a/src/shell-polkit-authentication-agent.c
+++ b/src/shell-polkit-authentication-agent.c
@@ -108,11 +108,18 @@ shell_polkit_authentication_agent_init (ShellPolkitAuthenticationAgent *agent)
&error);
if (subject == NULL)
{
- g_warning ("Error getting session for the process we are in: %s (%s %d)",
- error->message,
- g_quark_to_string (error->domain),
- error->code);
- g_error_free (error);
+ if (error) /* polkit version 104 and older don't properly set error on failure */
+ {
+ g_warning ("Error getting session for the process we are in: %s (%s %d)",
+ error->message,
+ g_quark_to_string (error->domain),
+ error->code);
+ g_error_free (error);
+ }
+ else
+ {
+ g_warning ("Error getting session for the process we are in");
+ }
goto out;
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]