diff --git a/src/app/browser/main/tab/page/navigation/request.cpp b/src/app/browser/main/tab/page/navigation/request.cpp index c891cd9..de11ba1 100644 --- a/src/app/browser/main/tab/page/navigation/request.cpp +++ b/src/app/browser/main/tab/page/navigation/request.cpp @@ -148,20 +148,18 @@ int Request::save( void Request::parse() // @TODO https://docs.gtk.org/glib/struct.Uri.html { + scheme.clear(); + host.clear(); + port.clear(); + path.clear(); + query.clear(); + auto match = Glib::Regex::split_simple( R"regex(^((\w+)?:\/\/)?([^:\/]+)?(:(\d+)?)?([^\?$]+)?(\?(.*)?)?)regex", get_text() ); - scheme = ""; - host = ""; - port = ""; - path = ""; - query = ""; - - int index = 0; - - for (const Glib::ustring & VALUE : match) + int index = 0; for (const Glib::ustring & VALUE : match) { switch (index) { diff --git a/src/app/browser/main/tab/page/navigation/request.hpp b/src/app/browser/main/tab/page/navigation/request.hpp index 14b499e..90c3131 100644 --- a/src/app/browser/main/tab/page/navigation/request.hpp +++ b/src/app/browser/main/tab/page/navigation/request.hpp @@ -67,10 +67,10 @@ namespace app::browser::main::tab::page::navigation double progress_fraction; Glib::ustring scheme, - host, - port, - path, - query; + host, + port, + path, + query; // Defaults const bool HEXPAND = true;