diff options
author | Carlos Garcia Campos <carlosgc@gnome.org> | 2006-05-09 18:00:47 (GMT) |
---|---|---|
committer | Carlos Garcia Campos <carlosgc@src.gnome.org> | 2006-05-09 18:00:47 (GMT) |
commit | 88ae241f9ed612041aa97fb0027d95169f89a026 (patch) | |
tree | a9188ca9231e270e9a37e8d84cd86ba695fc5909 /shell/ev-application.c | |
parent | 9341f430889ed826f8b326be923af9807d4133ee (diff) |
Fix some memory leaks.
2006-05-09 Carlos Garcia Campos <carlosgc@gnome.org>
* pdf/ev-poppler.cc:
* shell/ev-application.[ch]:
* shell/main.c:
Fix some memory leaks.
Diffstat (limited to 'shell/ev-application.c')
-rw-r--r-- | shell/ev-application.c | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/shell/ev-application.c b/shell/ev-application.c index de5e3a0..ffa58ee 100644 --- a/shell/ev-application.c +++ b/shell/ev-application.c @@ -46,20 +46,22 @@ G_DEFINE_TYPE (EvApplication, ev_application, G_TYPE_OBJECT); -#define EV_APPLICATION_GET_PRIVATE(object) \ - (G_TYPE_INSTANCE_GET_PRIVATE ((object), EV_TYPE_APPLICATION, EvApplicationPrivate)) - #define APPLICATION_SERVICE_NAME "org.gnome.evince.ApplicationService" #ifdef ENABLE_DBUS gboolean ev_application_register_service (EvApplication *application) { - DBusGConnection *connection; + static DBusGConnection *connection = NULL; DBusGProxy *driver_proxy; GError *err = NULL; guint request_name_result; + if (connection) { + g_warning ("Service already registered."); + return FALSE; + } + connection = dbus_g_bus_get (DBUS_BUS_STARTER, &err); if (connection == NULL) { g_warning ("Service registration failed."); @@ -90,6 +92,8 @@ ev_application_register_service (EvApplication *application) } #endif + g_object_unref (driver_proxy); + if (request_name_result == DBUS_REQUEST_NAME_REPLY_EXISTS) { return FALSE; } @@ -325,7 +329,7 @@ ev_application_shutdown (EvApplication *application) g_object_unref (application->recent_model); application->recent_model = NULL; } - + g_free (application->last_chooser_uri); g_object_unref (application); |