logo

badwolf

Minimalist and privacy-oriented WebKitGTK+ browser
commit: e5ecaf777659e8d3a625002826c4a1a3f8b31801
parent: 2a4e981821edcf340d1324560e95c08a4674bc22
Author: Haelwenn (lanodan) Monnier <contact@hacktivis.me>
Date:   Fri, 13 Dec 2019 14:06:33 +0100

badwolf.c: Use SoupURI instead of g_uri_parse_scheme()

Diffstat:

MMakefile2+-
Mbadwolf.c17++++++++++++++---
2 files changed, 15 insertions(+), 4 deletions(-)

diff --git a/Makefile b/Makefile @@ -7,7 +7,7 @@ DATADIR = $(PREFIX)/share/badwolf APPSDIR = $(PREFIX)/share/applications PACKAGE = Badwolf -DEPS = gtk+-3.0 webkit2gtk-4.0 +DEPS = gtk+-3.0 webkit2gtk-4.0 libsoup-2.4 OBJS = keybindings.o badwolf.o EXE = badwolf TRANS = fr.mo diff --git a/badwolf.c b/badwolf.c @@ -9,6 +9,7 @@ #include <glib/gi18n.h> /* _() and other internationalization/localization helpers */ #include <glib/gprintf.h> /* g_fprintf() */ +#include <libsoup/soup.h> /* soup* */ #include <locale.h> /* LC_* */ #include <stdlib.h> /* realpath(), malloc() */ @@ -64,11 +65,21 @@ notebookCb_switch__page(GtkNotebook *notebook, GtkWidget *page, guint page_num, gchar * badwolf_ensure_uri_scheme(gchar *text, gboolean try_file) { - if(text == NULL) return "about:blank"; + SoupURI *uri = soup_uri_new(text); - char *scheme = g_uri_parse_scheme(text); + if(uri->path == NULL) + { + soup_uri_free(uri); + return "about:blank"; + } + + if(uri->scheme != NULL) + { + soup_uri_free(uri); + return text; + } - if(scheme != NULL) return text; + soup_uri_free(uri); if(try_file) {