diff options
author | Guillaume Desmottes <guillaume.desmottes@collabora.co.uk> | 2011-02-24 21:29:22 +0800 |
---|---|---|
committer | Guillaume Desmottes <guillaume.desmottes@collabora.co.uk> | 2011-02-24 21:29:24 +0800 |
commit | 677a6bf7fca3ce8e26cf02d36c2721fa03510a4d (patch) | |
tree | 88bbdc10a72f52796440db2b01905d4b3f46f5ab /libempathy-gtk | |
parent | 4d45b02f6930ef0f97096deb5f70d62252dc7f95 (diff) | |
download | gsoc2013-empathy-677a6bf7fca3ce8e26cf02d36c2721fa03510a4d.tar gsoc2013-empathy-677a6bf7fca3ce8e26cf02d36c2721fa03510a4d.tar.gz gsoc2013-empathy-677a6bf7fca3ce8e26cf02d36c2721fa03510a4d.tar.bz2 gsoc2013-empathy-677a6bf7fca3ce8e26cf02d36c2721fa03510a4d.tar.lz gsoc2013-empathy-677a6bf7fca3ce8e26cf02d36c2721fa03510a4d.tar.xz gsoc2013-empathy-677a6bf7fca3ce8e26cf02d36c2721fa03510a4d.tar.zst gsoc2013-empathy-677a6bf7fca3ce8e26cf02d36c2721fa03510a4d.zip |
tls-dialog: destroy the dialog if the certificate is invalidated (#643186)
There is no point to keep it around.
Diffstat (limited to 'libempathy-gtk')
-rw-r--r-- | libempathy-gtk/empathy-tls-dialog.c | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/libempathy-gtk/empathy-tls-dialog.c b/libempathy-gtk/empathy-tls-dialog.c index f09d6c51d..8f1f49ed6 100644 --- a/libempathy-gtk/empathy-tls-dialog.c +++ b/libempathy-gtk/empathy-tls-dialog.c @@ -257,6 +257,16 @@ checkbox_toggled_cb (GtkToggleButton *checkbox, } static void +certificate_invalidated_cb (EmpathyTLSCertificate *certificate, + guint domain, + gint code, + gchar *message, + EmpathyTLSDialog *self) +{ + gtk_widget_destroy (GTK_WIDGET (self)); +} + +static void empathy_tls_dialog_constructed (GObject *object) { GtkWidget *content_area, *expander, *details, *checkbox; @@ -310,6 +320,9 @@ empathy_tls_dialog_constructed (GObject *object) details = build_gcr_widget (self); gtk_container_add (GTK_CONTAINER (expander), details); gtk_widget_show (details); + + tp_g_signal_connect_object (priv->certificate, "invalidated", + G_CALLBACK (certificate_invalidated_cb), self, 0); } static void |