}
if (priv->event) {
- gchar *message_esc = g_markup_escape_text (priv->event->message, -1);
+ gchar *message_esc = NULL;
- pixbuf = empathy_misc_get_pixbuf_for_notification (priv->event->contact,
- priv->event->icon_name);
+ if (priv->event->message != NULL)
+ message_esc = g_markup_escape_text (priv->event->message, -1);
if (priv->notification) {
notify_notification_update (priv->notification,
g_signal_connect (priv->notification, "closed",
G_CALLBACK (status_icon_notification_closed_cb), icon);
+ }
+
+ pixbuf = empathy_misc_get_pixbuf_for_notification (priv->event->contact,
+ priv->event->icon_name);
- }
- /* if icon doesn't exist libnotify will crash */
- if (pixbuf != NULL)
+ if (pixbuf != NULL) {
notify_notification_set_icon_from_pixbuf (priv->notification,
pixbuf);
+ g_object_unref (pixbuf);
+ }
+
notify_notification_show (priv->notification, NULL);
- g_object_unref (pixbuf);
g_free (message_esc);
} else {
notification_close_helper (priv);
if (!visible) {
empathy_window_iconify (priv->window, priv->icon);
} else {
- GList *accounts;
- GList *l;
- gboolean one_enabled = FALSE;
-
empathy_window_present (GTK_WINDOW (priv->window), TRUE);
-
- /* Show the accounts dialog if there is no enabled accounts */
- accounts = empathy_account_manager_dup_accounts (priv->account_manager);
- for (l = accounts ; l != NULL ; l = g_list_next (l)) {
- one_enabled = empathy_account_is_enabled (EMPATHY_ACCOUNT (l->data))
- || one_enabled;
- g_object_unref (l->data);
- }
- g_list_free (accounts);
- if (!one_enabled) {
- DEBUG ("No enabled account, Showing account dialog");
- empathy_accounts_dialog_show (GTK_WINDOW (priv->window), NULL);
- }
}
}