summaryrefslogtreecommitdiff
path: root/plugins/shotwell-publishing/PiwigoPublishing.vala
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/shotwell-publishing/PiwigoPublishing.vala')
-rw-r--r--plugins/shotwell-publishing/PiwigoPublishing.vala48
1 files changed, 26 insertions, 22 deletions
diff --git a/plugins/shotwell-publishing/PiwigoPublishing.vala b/plugins/shotwell-publishing/PiwigoPublishing.vala
index 649f135..f177789 100644
--- a/plugins/shotwell-publishing/PiwigoPublishing.vala
+++ b/plugins/shotwell-publishing/PiwigoPublishing.vala
@@ -1010,7 +1010,7 @@ internal class SSLErrorPane : Shotwell.Plugins.Common.BuilderPane {
public signal void proceed ();
public string host { owned get; construct; }
- public TlsCertificate cert { private get; construct; }
+ public TlsCertificate? cert { private get; construct; }
public string error_text { owned get; construct; }
public SSLErrorPane (SessionLoginTransaction transaction,
@@ -1037,28 +1037,32 @@ internal class SSLErrorPane : Shotwell.Plugins.Common.BuilderPane {
label.set_text (error_text);
var info = this.get_builder ().get_object ("default") as Gtk.Button;
- info.clicked.connect (() => {
- var simple_cert = new Gcr.SimpleCertificate (cert.certificate.data);
- var widget = new Gcr.CertificateWidget (simple_cert);
- bool use_header = true;
- Gtk.Settings.get_default ().get ("gtk-dialogs-use-header", out use_header);
- var flags = (Gtk.DialogFlags) 0;
- if (use_header) {
- flags |= Gtk.DialogFlags.USE_HEADER_BAR;
- }
+ if (cert != null) {
+ info.clicked.connect (() => {
+ var simple_cert = new Gcr.SimpleCertificate (cert.certificate.data);
+ var widget = new Gcr.CertificateWidget (simple_cert);
+ bool use_header = true;
+ Gtk.Settings.get_default ().get ("gtk-dialogs-use-header", out use_header);
+ var flags = (Gtk.DialogFlags) 0;
+ if (use_header) {
+ flags |= Gtk.DialogFlags.USE_HEADER_BAR;
+ }
- var dialog = new Gtk.Dialog.with_buttons (
- _("Certificate of %s").printf (host),
- null,
- flags,
- _("_OK"), Gtk.ResponseType.OK);
- dialog.get_content_area ().add (widget);
- dialog.set_default_response (Gtk.ResponseType.OK);
- dialog.set_default_size (640, -1);
- dialog.show_all ();
- dialog.run ();
- dialog.destroy ();
- });
+ var dialog = new Gtk.Dialog.with_buttons (
+ _("Certificate of %s").printf (host),
+ null,
+ flags,
+ _("_OK"), Gtk.ResponseType.OK);
+ dialog.get_content_area ().add (widget);
+ dialog.set_default_response (Gtk.ResponseType.OK);
+ dialog.set_default_size (640, -1);
+ dialog.show_all ();
+ dialog.run ();
+ dialog.destroy ();
+ });
+ } else {
+ info.get_parent().remove(info);
+ }
var proceed = this.get_builder ().get_object ("proceed_button") as Gtk.Button;
proceed.clicked.connect (() => { this.proceed (); });