]> git.ipfire.org Git - thirdparty/hostap.git/commitdiff
webkit2: Split resource-load-started handler into a separate function
authorJouni Malinen <j@w1.fi>
Sun, 16 Feb 2020 16:37:02 +0000 (18:37 +0200)
committerJouni Malinen <j@w1.fi>
Sun, 16 Feb 2020 17:15:02 +0000 (19:15 +0200)
This cleans up the #ifdef/#else/#endif mess in the function for webkit
vs. webkit2 API.

Signed-off-by: Jouni Malinen <j@w1.fi>
src/utils/browser.c

index b5793627f37531282fc4d1f8eabf1a33e8b2f8b4..8cee320c121b63667f1af2bf63affcb9b64dee3c 100644 (file)
@@ -95,35 +95,11 @@ static void view_cb_notify_load_status(WebKitWebView *view, GParamSpec *pspec,
 #endif /* USE_WEBKIT2 */
 
 
-static void view_cb_resource_request_starting(WebKitWebView *view,
-#ifndef USE_WEBKIT2
-                                             WebKitWebFrame *frame,
-#endif /* USE_WEBKIT2 */
-                                             WebKitWebResource *res,
-#ifdef USE_WEBKIT2
-                                             WebKitURIRequest *req,
-#else /* USE_WEBKIT2 */
-                                             WebKitNetworkRequest *req,
-                                             WebKitNetworkResponse *resp,
-#endif /* USE_WEBKIT2 */
-                                             struct browser_context *ctx)
+static void process_request_starting_uri(struct browser_context *ctx,
+                                        const char *uri)
 {
-#ifdef USE_WEBKIT2
-       const gchar *uri = webkit_uri_request_get_uri(req);
-#else /* USE_WEBKIT2 */
-       const gchar *uri = webkit_network_request_get_uri(req);
-#endif /* USE_WEBKIT2 */
        int quit = 0;
 
-       wpa_printf(MSG_DEBUG, "BROWSER:%s uri=%s", __func__, uri);
-       if (g_str_has_suffix(uri, "/favicon.ico")) {
-#ifdef USE_WEBKIT2
-               webkit_uri_request_set_uri(req, "about:blank");
-#else /* USE_WEBKIT2 */
-               webkit_network_request_set_uri(req, "about:blank");
-#endif /* USE_WEBKIT2 */
-       }
-
        if (g_str_has_prefix(uri, "osu://")) {
                ctx->success = atoi(uri + 6);
                quit = 1;
@@ -147,6 +123,39 @@ static void view_cb_resource_request_starting(WebKitWebView *view,
 }
 
 
+#ifdef USE_WEBKIT2
+static void view_cb_resource_load_starting(WebKitWebView *view,
+                                          WebKitWebResource *res,
+                                          WebKitURIRequest *req,
+                                          struct browser_context *ctx)
+{
+       const gchar *uri = webkit_uri_request_get_uri(req);
+
+       wpa_printf(MSG_DEBUG, "BROWSER:%s uri=%s", __func__, uri);
+       if (g_str_has_suffix(uri, "/favicon.ico"))
+               webkit_uri_request_set_uri(req, "about:blank");
+
+       process_request_starting_uri(ctx, uri);
+}
+#else /* USE_WEBKIT2 */
+static void view_cb_resource_request_starting(WebKitWebView *view,
+                                             WebKitWebFrame *frame,
+                                             WebKitWebResource *res,
+                                             WebKitNetworkRequest *req,
+                                             WebKitNetworkResponse *resp,
+                                             struct browser_context *ctx)
+{
+       const gchar *uri = webkit_network_request_get_uri(req);
+
+       wpa_printf(MSG_DEBUG, "BROWSER:%s uri=%s", __func__, uri);
+       if (g_str_has_suffix(uri, "/favicon.ico"))
+               webkit_network_request_set_uri(req, "about:blank");
+
+       process_request_starting_uri(ctx, uri);
+}
+#endif /* USE_WEBKIT2 */
+
+
 static gboolean view_cb_mime_type_policy_decision(
        WebKitWebView *view,
 #ifndef USE_WEBKIT2
@@ -312,7 +321,7 @@ int hs20_web_browser(const char *url, int ignore_tls)
                         G_CALLBACK(view_cb_notify_estimated_load_progress),
                         &ctx);
        g_signal_connect(G_OBJECT(view), "resource-load-started",
-                        G_CALLBACK(view_cb_resource_request_starting), &ctx);
+                        G_CALLBACK(view_cb_resource_load_starting), &ctx);
        g_signal_connect(G_OBJECT(view), "decide-policy",
                         G_CALLBACK(view_cb_mime_type_policy_decision), &ctx);
        g_signal_connect(G_OBJECT(view), "mouse-target-changed",