fix adblock crasher bug
authorMarinus Schraal <foser@gentoo.org>
Wed, 29 Mar 2006 11:25:42 +0000 (11:25 +0000)
committerMarinus Schraal <foser@gentoo.org>
Wed, 29 Mar 2006 11:25:42 +0000 (11:25 +0000)
Package-Manager: portage-2.1_pre4-r1

www-client/epiphany-extensions/ChangeLog
www-client/epiphany-extensions/Manifest
www-client/epiphany-extensions/epiphany-extensions-2.14.0.1.ebuild
www-client/epiphany-extensions/files/epiphany-extensions-2.14.0.1-adblock.patch [new file with mode: 0644]

index 35f0c0ffae954b7fb2168dcbb67647d7cb5995d6..85456a964e93b3c9eada8c15821648c9b2e7c16d 100644 (file)
@@ -1,6 +1,11 @@
 # ChangeLog for www-client/epiphany-extensions
 # Copyright 1999-2006 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/www-client/epiphany-extensions/ChangeLog,v 1.22 2006/03/13 01:45:05 joem Exp $
+# $Header: /var/cvsroot/gentoo-x86/www-client/epiphany-extensions/ChangeLog,v 1.23 2006/03/29 11:25:42 foser Exp $
+
+  29 Mar 2006; Marinus Schraal <foser@gentoo.org>
+  files/epiphany-extensions-2.14.0.1-adblock.patch :
+  Fix adblock crasher (#127890), thnx to Ed Catmur for reporting
+  Minor dep fixes, move adblock to pcre useflag
 
 *epiphany-extensions-2.14.0.1 (13 Mar 2006)
 
index 00f402939e222b666974f0d4f5a45ef962c2db08..0825f572a8bbb42b9f42039ef357d460b3cf09a5 100644 (file)
@@ -1,6 +1,6 @@
-MD5 b2538e1bd77736f2cc40f3faad4c3164 ChangeLog 4562
-RMD160 ee43f99311e1c344d19727f10da71e27ec9d0e72 ChangeLog 4562
-SHA256 554a05932d4b72584823936203485caa46d73fa9bd605995c965ab307965465e ChangeLog 4562
+MD5 b60c9ea2e97af547342a98c992f0969a ChangeLog 4780
+RMD160 9f7bb0e1826de434c0e57429b711706defa49bd2 ChangeLog 4780
+SHA256 67d6908de12e72c1232cdbc4ca9d5ff04a81ebdc8e0e6546f85de3cd46f32ff1 ChangeLog 4780
 MD5 82452a5693e265225e96d4222547dafa epiphany-extensions-1.6.0.ebuild 1210
 RMD160 8dcc68a548ca4a47a1fb646990fcfa3a94f751b8 epiphany-extensions-1.6.0.ebuild 1210
 SHA256 89e4e5497b2dda0f81351bc3bf783f9e5cc810acd2983bbda2a6fd61d6363960 epiphany-extensions-1.6.0.ebuild 1210
@@ -10,9 +10,9 @@ SHA256 e05d6a7d11190b34e71ef365adaa5f3c306c54d070d933291863d3acbab58d1b epiphany
 MD5 e7c616376050b81a4481fb1c2a499543 epiphany-extensions-1.8.1.ebuild 2144
 RMD160 9664d1a876451dc32e04b15167918b741ffbfd0d epiphany-extensions-1.8.1.ebuild 2144
 SHA256 c57a0c0e34ace24bbc557d4f1d03b8bf942606e90f9a8afaf4852e8323110bb7 epiphany-extensions-1.8.1.ebuild 2144
-MD5 95036cc9d52fc430332850ee0c64ae60 epiphany-extensions-2.14.0.1.ebuild 2005
-RMD160 f5ba83fb67b7c6428449f4edff5ab54144365ccb epiphany-extensions-2.14.0.1.ebuild 2005
-SHA256 9511a2c674ec135f960d436b5f5cabc352147d7a18c67b66c12d35191f543cce epiphany-extensions-2.14.0.1.ebuild 2005
+MD5 4a4f8c81380e3ec3731d49fa975bae1e epiphany-extensions-2.14.0.1.ebuild 2132
+RMD160 4d700aa8c74822743ef900e683906f3fae47c114 epiphany-extensions-2.14.0.1.ebuild 2132
+SHA256 136adebefcd9917d158d19776c665d96f0114bd92d53b942e06ef0d8276be60e epiphany-extensions-2.14.0.1.ebuild 2132
 MD5 707f7a46f60ea0b7cf60bda490cdbf9e files/digest-epiphany-extensions-1.6.0 78
 RMD160 475c872ee34c13d028a53ffe95c2ab0674040157 files/digest-epiphany-extensions-1.6.0 78
 SHA256 d6f2963411e327b34e7be4229684ac073ad6a24232a4bc40fc8da6b6cfad6036 files/digest-epiphany-extensions-1.6.0 78
@@ -34,6 +34,9 @@ SHA256 91e60a62860ce009a2d719739992aef0bed68d4646581060680cd0a2636eb218 files/ep
 MD5 67ceb0a8ab526d679f2cf09219d6e6ce files/epiphany-extensions-1.8.0-fix-includes.patch 2848
 RMD160 c9e53761f7ccf40bc6b6641122ca2a8bce02ce61 files/epiphany-extensions-1.8.0-fix-includes.patch 2848
 SHA256 0821a5fd7981e0bd1f1c67acd71f6e44f4e6276ecd4987b972525da7336f16ae files/epiphany-extensions-1.8.0-fix-includes.patch 2848
+MD5 7f9be52678e23dec988ec1cd8d4d160d files/epiphany-extensions-2.14.0.1-adblock.patch 2995
+RMD160 5bbe4decdd95a53ac39e43f72785ba522aa401d2 files/epiphany-extensions-2.14.0.1-adblock.patch 2995
+SHA256 d995ec026435dc280ff9ba6a7d6ff3951ca2dee7eab1b5075c90ea4e78a2be64 files/epiphany-extensions-2.14.0.1-adblock.patch 2995
 MD5 03ad2e6c4ab41244af1015a8bbb0b39f metadata.xml 158
 RMD160 c0e2bae8e91bb6be8922bac5e4f597302e06587e metadata.xml 158
 SHA256 3a7dbca0fdc557de69783e0663e2d76ddab129ea8a19b2d0ef6d3e5d1b947ce1 metadata.xml 158
index a822697d1b8c1faa276145599928a5e7f5aa8a15..b39b6d35dfb327f32a9bd98239915bda5f1b76ed 100644 (file)
@@ -1,6 +1,6 @@
 # Copyright 1999-2006 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/www-client/epiphany-extensions/epiphany-extensions-2.14.0.1.ebuild,v 1.3 2006/03/19 17:23:18 joem Exp $
+# $Header: /var/cvsroot/gentoo-x86/www-client/epiphany-extensions/epiphany-extensions-2.14.0.1.ebuild,v 1.4 2006/03/29 11:25:42 foser Exp $
 
 inherit eutils gnome2
 
@@ -20,7 +20,7 @@ RDEPEND=">=www-client/epiphany-2.14.0
        app-text/opensp
        !firefox? ( >=www-client/mozilla-1.7.5 )
        firefox? ( >=www-client/mozilla-firefox-1.0.2-r1 )
-       pcre? ( dev-libs/libpcre )
+       pcre? ( >=dev-libs/libpcre-3.9-r2 )
        dbus? ( >=sys-apps/dbus-0.34 )
        python? ( >=dev-lang/python-2.3 )"
 
@@ -28,12 +28,10 @@ DEPEND="${RDEPEND}
        >=dev-util/pkgconfig-0.9
        >=dev-util/intltool-0.29"
 
-USE_DESTDIR="1"
 DOCS="AUTHORS ChangeLog HACKING NEWS README"
 
-
 pkg_setup() {
-       local extensions="actions adblock auto-reload auto-scroller certificates \
+       local extensions="actions auto-reload auto-scroller certificates \
                dashboard error-viewer extensions-manager-ui gestures page-info \
                push-scroller sample sample-mozilla select-stylesheet sidebar smart-bookmarks \
                tab-groups tab-states tabsmenu"
@@ -49,7 +47,7 @@ pkg_setup() {
                use dbus && extensions="${extensions} rss"
        fi
 
-       use pcre && extensions="${extensions} greasemonkey"
+       use pcre && extensions="${extensions} greasemonkey adblock"
 
        use python && extensions="${extensions} python-console sample-python \
                favicon"
@@ -68,3 +66,13 @@ pkg_setup() {
                G2CONF="${G2CONF} --with-mozilla=mozilla"
        fi
 }
+
+src_unpack() {
+
+       unpack ${A}
+
+       cd ${S}/extensions/adblock
+       # fix adblock crasher (#127890)
+       epatch ${FILESDIR}/${P}-adblock.patch
+
+}
diff --git a/www-client/epiphany-extensions/files/epiphany-extensions-2.14.0.1-adblock.patch b/www-client/epiphany-extensions/files/epiphany-extensions-2.14.0.1-adblock.patch
new file mode 100644 (file)
index 0000000..deebe9b
--- /dev/null
@@ -0,0 +1,84 @@
+===================================================================
+RCS file: /cvs/gnome/epiphany-extensions/extensions/adblock/ephy-adblock-extension.c,v
+retrieving revision 1.10
+retrieving revision 1.10.2.1
+diff -u -r1.10 -r1.10.2.1
+--- ephy-adblock-extension.c   2006/03/11 18:41:20     1.10
++++ ephy-adblock-extension.c   2006/03/16 14:59:22     1.10.2.1
+@@ -16,7 +16,7 @@
+  *  along with this program; if not, write to the Free Software
+  *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+  *
+- *  $Id: epiphany-extensions-2.14.0.1-adblock.patch,v 1.1 2006/03/29 11:25:42 foser Exp $
++ *  $Id: epiphany-extensions-2.14.0.1-adblock.patch,v 1.1 2006/03/29 11:25:42 foser Exp $
+  */
+ #include "config.h"
+@@ -270,11 +270,8 @@
+       statusbar = EPHY_STATUSBAR (ephy_window_get_statusbar (window));
+       g_return_if_fail (statusbar != NULL);
+-      frame = g_object_get_data (G_OBJECT (statusbar), STATUSBAR_FRAME_KEY);
+-      evbox = g_object_get_data (G_OBJECT (statusbar), STATUSBAR_EVBOX_KEY);
+-
+-      g_object_set_data (G_OBJECT (statusbar), STATUSBAR_FRAME_KEY, NULL);
+-      g_object_set_data (G_OBJECT (statusbar), STATUSBAR_EVBOX_KEY, NULL);
++      frame = g_object_steal_data (G_OBJECT (statusbar), STATUSBAR_FRAME_KEY);
++      evbox = g_object_steal_data (G_OBJECT (statusbar), STATUSBAR_EVBOX_KEY);
+       g_return_if_fail (frame != NULL);
+       g_return_if_fail (evbox != NULL);
+@@ -365,7 +362,8 @@
+ }
+ static AdBlocker *
+-ensure_adblocker (EphyWindow *window, EphyEmbed *embed)
++ensure_adblocker (EphyWindow *window,
++                EphyEmbed *embed)
+ {
+       AdBlocker *blocker;
+@@ -382,19 +380,19 @@
+               blocker = ad_blocker_new (ext->priv->tester);
+               g_return_val_if_fail (blocker != NULL, NULL);
+-              g_object_set_data (G_OBJECT (embed), AD_BLOCKER_KEY, blocker);
++              g_object_set_data_full (G_OBJECT (embed), AD_BLOCKER_KEY,
++                                      blocker, (GDestroyNotify) g_object_unref);
+               g_signal_connect (embed, "ge-location",
+-                              G_CALLBACK (location_changed_cb), blocker);
++                                G_CALLBACK (location_changed_cb), blocker);
+               g_signal_connect (embed, "content-blocked",
+-                              G_CALLBACK (content_blocked_cb), blocker);
++                                G_CALLBACK (content_blocked_cb), blocker);
+       }
+       return blocker;
+ }
+-
+ static void
+ impl_attach_tab (EphyExtension *ext,
+                EphyWindow *window,
+@@ -422,15 +420,15 @@
+       
+       embed = ephy_tab_get_embed (tab);
+-      blocker = g_object_get_data (G_OBJECT (embed), AD_BLOCKER_KEY);
++      blocker = g_object_steal_data (G_OBJECT (embed), AD_BLOCKER_KEY);
+       g_return_if_fail (blocker != NULL);
+       g_signal_handlers_disconnect_by_func
+-              (G_OBJECT (embed), G_CALLBACK (content_blocked_cb), blocker);
++              (embed, G_CALLBACK (content_blocked_cb), blocker);
+       g_signal_handlers_disconnect_by_func
+-              (G_OBJECT (embed), G_CALLBACK (location_changed_cb), blocker);
++              (embed, G_CALLBACK (location_changed_cb), blocker);
+       g_signal_handlers_disconnect_by_func
+-              (G_OBJECT (blocker), G_CALLBACK (num_blocked_cb), blocker);
++              (blocker, G_CALLBACK (num_blocked_cb), embed);
+       g_object_unref (blocker);
+ }