]> spindle.queued.net Git - midori/commitdiff
Fix uri matching for addon infobar on userstyles.org
authorPaweł Forysiuk <tuxator@o2.pl>
Fri, 1 Apr 2011 14:10:16 +0000 (16:10 +0200)
committerChristian Dywan <christian@twotoasts.de>
Sun, 3 Apr 2011 23:12:43 +0000 (01:12 +0200)
We want to match a style, with a number in the URI, but not when
browsing styles.

extensions/addons.c

index d09981212a79a1238d3be198402562b1986a086e..62030cf133e5f84eaf4986c1d50330d32e1bb56c 100644 (file)
@@ -1,7 +1,7 @@
 /*
  Copyright (C) 2008 Christian Dywan <christian@twotoasts.de>
  Copyright (C) 2008-2010 Arno Renevier <arno@renevier.net>
- Copyright (C) 2010 Paweł Forysiuk <tuxator@o2.pl>
+ Copyright (C) 2010-2011 Paweł Forysiuk <tuxator@o2.pl>
 
  This library is free software; you can redistribute it and/or
  modify it under the terms of the GNU Lesser General Public
@@ -152,15 +152,10 @@ addons_install_response (GtkWidget*  infobar,
             }
             else if (!g_strcmp0 (hostname, "userstyles.org"))
             {
-                gchar* subpage;
+                gchar* subpage = split_uri[4];
 
                 folder = "styles";
-                if (g_str_has_suffix (uri, "/"))
-                    subpage = split_uri[6];
-                else
-                    subpage = split_uri[5];
-
-                if (!subpage)
+                if ((subpage && *subpage) && g_ascii_isdigit (subpage[0]))
                 {
                     gchar* style_id;
                     const gchar* js_script;
@@ -278,14 +273,10 @@ addons_notify_load_status_cb (MidoriView*      view,
            else if (g_str_has_prefix (uri, "http://userstyles.org/styles/"))
            {
                gchar** split_uri = g_strsplit (uri, "/", -1);
-               gchar* subpage;
+               gchar* subpage = split_uri[4];
 
-               if (g_str_has_suffix (uri, "/"))
-                   subpage = split_uri[6];
-               else
-                   subpage = split_uri[5];
                /* userstyles.org style main page with style description */
-               if (!subpage)
+               if ((subpage && *subpage) && g_ascii_isdigit (subpage[0]))
                    addons_uri_install (view, ADDONS_USER_STYLES);
 
                g_strfreev (split_uri);