From a635c30564ecaccbbaf3420025419d9c6080d4bd Mon Sep 17 00:00:00 2001 From: Dirk Hohndel Date: Mon, 25 Feb 2013 13:22:33 -0800 Subject: [PATCH] Work around yet another Gtk bug: gtk_show_uri doesn't work on Mac Instead use the native function to open the URL. Signed-off-by: Dirk Hohndel --- macos.c | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/macos.c b/macos.c index 2e549f926..dedca7ec7 100644 --- a/macos.c +++ b/macos.c @@ -4,6 +4,7 @@ #include "dive.h" #include "display-gtk.h" #include +#include #include #include "gtkosxapplication.h" @@ -228,12 +229,9 @@ gboolean subsurface_os_feature_available(os_feature_t f) gboolean subsurface_launch_for_uri(const char* uri) { - GError *err = NULL; - gtk_show_uri(NULL, uri, gtk_get_current_event_time(), &err); - if (err) { - g_message("%s: %s", err->message, uri); - g_error_free(err); + CFURLRef urlref = CFURLCreateWithBytes(NULL, uri, strlen(uri), kCFStringEncodingMacRoman, NULL); + OSStatus status = LSOpenCFURLRef(urlref, NULL); + if (status) return FALSE; - } return TRUE; }