diff --git a/src/shell-polkit-authentication-agent.c b/src/shell-polkit-authentication-agent.c index ede4fd97b..472dea51b 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; }