[evolution-data-server] Fix a crash in server_side_source_credentials_lookup_cb()
- From: Milan Crha <mcrha src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [evolution-data-server] Fix a crash in server_side_source_credentials_lookup_cb()
- Date: Fri, 27 Feb 2015 06:59:11 +0000 (UTC)
commit 5677aadad595aaa254f205053e447fee8c166b6e
Author: Milan Crha <mcrha redhat com>
Date: Fri Feb 27 07:57:17 2015 +0100
Fix a crash in server_side_source_credentials_lookup_cb()
A NULL 'error' variable dereference caused the crash. The change
also cleanups the code a bit, by removing incorrect runtime checks.
libebackend/e-server-side-source.c | 7 ++++---
1 files changed, 4 insertions(+), 3 deletions(-)
---
diff --git a/libebackend/e-server-side-source.c b/libebackend/e-server-side-source.c
index 8e3213e..c47e82c 100644
--- a/libebackend/e-server-side-source.c
+++ b/libebackend/e-server-side-source.c
@@ -406,7 +406,6 @@ server_side_source_credentials_lookup_cb (GObject *source_object,
dbus_object = e_source_ref_dbus_object (E_SOURCE (data->source));
if (!dbus_object) {
e_named_parameters_free (credentials);
- g_warn_if_fail (dbus_object != NULL);
reinvoke_credentials_required_data_free (data);
return;
}
@@ -414,8 +413,7 @@ server_side_source_credentials_lookup_cb (GObject *source_object,
dbus_source = e_dbus_object_get_source (E_DBUS_OBJECT (dbus_object));
if (!dbus_source) {
e_named_parameters_free (credentials);
- g_warn_if_fail (dbus_source != NULL);
- g_object_unref (dbus_object);
+ g_clear_object (&dbus_object);
reinvoke_credentials_required_data_free (data);
return;
}
@@ -463,6 +461,9 @@ server_side_source_credentials_lookup_cb (GObject *source_object,
arg_dbus_error_message = data->arg_dbus_error_message;
if (!arg_dbus_error_name || !*arg_dbus_error_name) {
+ if (!error)
+ error = g_error_new_literal (G_IO_ERROR, G_IO_ERROR_FAILED,
_("Unknown error"));
+
dbus_error_name = g_dbus_error_encode_gerror (error);
arg_dbus_error_name = dbus_error_name;
arg_dbus_error_message = error->message;
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]