diff options
author | Romain Perier <mrpouet@gentoo.org> | 2009-11-04 21:43:38 +0000 |
---|---|---|
committer | Romain Perier <mrpouet@gentoo.org> | 2009-11-04 21:43:38 +0000 |
commit | e6c6732cf93b41c67002f4cb3a309f132f58b06b (patch) | |
tree | 256e9307acb20207fe2580c568187b2aa6c8eba8 /gnome-base/gconf | |
parent | Version bump. Add missing gnome-doc-utils and libnotify dependency, bug #2918... (diff) | |
download | historical-e6c6732cf93b41c67002f4cb3a309f132f58b06b.tar.gz historical-e6c6732cf93b41c67002f4cb3a309f132f58b06b.tar.bz2 historical-e6c6732cf93b41c67002f4cb3a309f132f58b06b.zip |
Do not crash in gconf_entry_set_value() when entry is NULL
Package-Manager: portage-2.2_rc48/cvs/Linux x86_64
Diffstat (limited to 'gnome-base/gconf')
-rw-r--r-- | gnome-base/gconf/ChangeLog | 9 | ||||
-rw-r--r-- | gnome-base/gconf/Manifest | 14 | ||||
-rw-r--r-- | gnome-base/gconf/files/gconf-2.28.0-entry-set-value-sigsegv.patch | 18 | ||||
-rw-r--r-- | gnome-base/gconf/gconf-2.28.0-r1.ebuild | 107 |
4 files changed, 136 insertions, 12 deletions
diff --git a/gnome-base/gconf/ChangeLog b/gnome-base/gconf/ChangeLog index a18c027e82a7..46fae421e59e 100644 --- a/gnome-base/gconf/ChangeLog +++ b/gnome-base/gconf/ChangeLog @@ -1,6 +1,13 @@ # ChangeLog for gnome-base/gconf # Copyright 1999-2009 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/gnome-base/gconf/ChangeLog,v 1.215 2009/10/29 23:38:50 eva Exp $ +# $Header: /var/cvsroot/gentoo-x86/gnome-base/gconf/ChangeLog,v 1.216 2009/11/04 21:43:37 mrpouet Exp $ + +*gconf-2.28.0-r1 (04 Nov 2009) + + 04 Nov 2009; Romain Perier <mrpouet@gentoo.org> + +gconf-2.28.0-r1.ebuild, + +files/gconf-2.28.0-entry-set-value-sigsegv.patch: + Do not crash in gconf_entry_set_value() when entry is NULL. *gconf-2.28.0 (29 Oct 2009) diff --git a/gnome-base/gconf/Manifest b/gnome-base/gconf/Manifest index 37ca7b3d4937..507752db7de1 100644 --- a/gnome-base/gconf/Manifest +++ b/gnome-base/gconf/Manifest @@ -1,20 +1,12 @@ ------BEGIN PGP SIGNED MESSAGE----- -Hash: SHA1 - AUX gconf-2.24.0-automagic-ldap.patch 2442 RMD160 adc1d7e7f8209da674fca5ac6ad91628887535b3 SHA1 ddf6759e0316b811f1d152294cd7de3b3330f62d SHA256 d960ab342d8224853ac689256e910ad8855031a721c73304aa32d5810443798d AUX gconf-2.24.0-no-gconfd.patch 787 RMD160 bbcd0e1dd0f49053522e703c33a9befb392b2203 SHA1 ccc94c4766a29f1bb3f16c1d1995996ba682686a SHA256 f8352648276d2a2dab162ddade55ec0371e7c4f8bc3834de246fda8c32c66d3c +AUX gconf-2.28.0-entry-set-value-sigsegv.patch 533 RMD160 77e4fae8a19a57904d9e6706238a94172da5c223 SHA1 9deb172ce170e7333931e61e3cf2ae6ade24bb33 SHA256 e58c0981491e794de05dd71562e0a9675433469e87c7149088ebea432c9619b0 DIST GConf-2.24.0.tar.bz2 1467817 RMD160 b4016275e9dffa248620303bc2241f6c0081be06 SHA1 e93ff2609c0278075acabdf609f42aa406e20c8e SHA256 990003904ee13b2fd98a61d55fa4d0fcb30fb233454a036bb9465f42d1acbb1b DIST GConf-2.26.2.tar.bz2 1474738 RMD160 280cd55dc3562445c716b88dfddba4ddd2508786 SHA1 bf5323d974fa22165de2144100234647fd50ef17 SHA256 717af270db891088394d154e3e22acc01af382306624c83679a4f8d6ba8467ed DIST GConf-2.28.0.tar.bz2 1476190 RMD160 99b09ab7d6453338adacc1f194013294b65fe33c SHA1 8371d88cc84fd727dfd0f8d413fa20a8bfe814fd SHA256 d057dcfe2bfb2a80e592349c2a78d7dce12d19542aeced466c64fb701c806ac8 EBUILD gconf-2.24.0.ebuild 2406 RMD160 8b3f7d019811d87874c68f0ac57723c6e525440c SHA1 91d4fcbd135f2f4f190e01b1b367d62bdc169a76 SHA256 347994f0ab08deaa90299c12eb5f622a021c22a379fb56bce3bceaaa9d3b97a3 EBUILD gconf-2.26.2-r1.ebuild 2613 RMD160 4f02c0a4fe239a73544712e314896e3eff4ec4f7 SHA1 53cfcd5df2d7a0636e89c0f9e6eb447d103e6c80 SHA256 4e8fec2455cbfac651eb851fa0cb047a16aa0fa8745ec46381c5a28ad54b5e23 +EBUILD gconf-2.28.0-r1.ebuild 2673 RMD160 a9e4c78d30840e16a242ca50f58e6019794337ae SHA1 9bc84e45980dc5090d662ba4862f452f9af4a6ab SHA256 5ba3e2f2761e4ccb16d3ec1e19cf69b72e12db4b07017289f0f3906ed601b8f7 EBUILD gconf-2.28.0.ebuild 2538 RMD160 06df7ada8a0ed0e3a1157fa6099209655e6e450d SHA1 12417651d6bfe482483ffc482916fcc244c99dde SHA256 7921a48ec356b4a521863083ebd98b82bd37b134d313f813d43fd2a099242296 -MISC ChangeLog 28248 RMD160 4943dfa5a8c1f6f5774484d464cd0f9820ecb77f SHA1 ad7d5ab048d979f9217b5a399b27b6f977689365 SHA256 e00e7300359e1da47625c4a2d6e92b708887344f4e3351d4f1423d3e1ca34ae3 +MISC ChangeLog 28477 RMD160 51d309cac795e8cb1f23cabbacfb5772a6a8d64c SHA1 2a591dbea955d7497179f4891347bf7ff48dd6f5 SHA256 e62d13a0cde6b02d533b9d33f821bf816f81be233196a29f3c37262eff6262a7 MISC metadata.xml 158 RMD160 c0e2bae8e91bb6be8922bac5e4f597302e06587e SHA1 38f78e9790bcd4382b4a49aa226aa6dda1d3a3d7 SHA256 3a7dbca0fdc557de69783e0663e2d76ddab129ea8a19b2d0ef6d3e5d1b947ce1 ------BEGIN PGP SIGNATURE----- -Version: GnuPG v2.0.11 (GNU/Linux) - -iEYEARECAAYFAkrqJ48ACgkQ1fmVwcYIWAauuACeI7BhdIKRXwJmllkh+eLm8DtX -EvYAoNQgaQuJno+Rf53AE3tjGwWz5Zf4 -=tG1M ------END PGP SIGNATURE----- diff --git a/gnome-base/gconf/files/gconf-2.28.0-entry-set-value-sigsegv.patch b/gnome-base/gconf/files/gconf-2.28.0-entry-set-value-sigsegv.patch new file mode 100644 index 000000000000..680b1a159b4a --- /dev/null +++ b/gnome-base/gconf/files/gconf-2.28.0-entry-set-value-sigsegv.patch @@ -0,0 +1,18 @@ +From: Romain Perier <mrpouet@gentoo.org> +Date: Wed, 4 Nov 2009 11:58:25 +0100 +Subject: Do not segfault when entry is NULL + +--- + gconf/gconf-value.c | 1 + + 1 files changed, 1 insertions(+), 0 deletions(-) + +--- a/gconf/gconf-value.c ++++ b/gconf/gconf-value.c +@@ -1609,6 +1609,7 @@ void + gconf_entry_set_value (GConfEntry *entry, + const GConfValue *val) + { ++ g_return_if_fail (entry != NULL); + gconf_entry_set_value_nocopy (entry, + val ? gconf_value_copy (val) : NULL); + } diff --git a/gnome-base/gconf/gconf-2.28.0-r1.ebuild b/gnome-base/gconf/gconf-2.28.0-r1.ebuild new file mode 100644 index 000000000000..93d1f947f9ca --- /dev/null +++ b/gnome-base/gconf/gconf-2.28.0-r1.ebuild @@ -0,0 +1,107 @@ +# Copyright 1999-2009 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/gnome-base/gconf/gconf-2.28.0-r1.ebuild,v 1.1 2009/11/04 21:43:37 mrpouet Exp $ + +EAPI="2" + +inherit eutils gnome2 + +MY_PN=GConf +MY_P=${MY_PN}-${PV} +PVP=(${PV//[-\._]/ }) + +DESCRIPTION="Gnome Configuration System and Daemon" +HOMEPAGE="http://www.gnome.org/" +SRC_URI="mirror://gnome/sources/${MY_PN}/${PVP[0]}.${PVP[1]}/${MY_P}.tar.bz2" + +LICENSE="LGPL-2" +SLOT="2" +KEYWORDS="~amd64 ~x86" +IUSE="debug doc ldap policykit" + +RDEPEND=">=dev-libs/glib-2.14 + >=x11-libs/gtk+-2.8.16 + >=dev-libs/dbus-glib-0.74 + >=sys-apps/dbus-1 + >=gnome-base/orbit-2.4 + >=dev-libs/libxml2-2 + ldap? ( net-nds/openldap ) + policykit? ( sys-auth/polkit )" +DEPEND="${RDEPEND} + >=dev-util/intltool-0.35 + >=dev-util/pkgconfig-0.9 + >=dev-util/gtk-doc-am-1.10 + doc? ( >=dev-util/gtk-doc-1 )" + +DOCS="AUTHORS ChangeLog NEWS README TODO" + +S="${WORKDIR}/${MY_P}" + +pkg_setup() { + G2CONF="${G2CONF} + --enable-gtk + --disable-static + $(use_with ldap openldap) + $(use_enable policykit defaults-service)" + kill_gconf + + # Need host's IDL compiler for cross or native build, bug #262747 + export EXTRA_EMAKE="${EXTRA_EMAKE} ORBIT_IDL=/usr/bin/orbit-idl-2" +} + +src_prepare() { + gnome2_src_prepare + + # Do not start gconfd when installing schemas, fix bug #238276, upstream ? + epatch "${FILESDIR}/${PN}-2.24.0-no-gconfd.patch" + + # Do not crash in gconf_entry_set_value() when entry pointer is NULL + epatch "${FILESDIR}/${P}-entry-set-value-sigsegv.patch" + + # Fix intltoolize broken file, see upstream #577133 + sed "s:'\^\$\$lang\$\$':\^\$\$lang\$\$:g" -i po/Makefile.in.in || die "sed failed" +} + +# Can't run tests, missing script. +#src_test() { +# emake -C tests || die "make tests failed" +# sh "${S}"/tests/runtests.sh || die "running tests failed" +#} + +src_install() { + gnome2_src_install + + keepdir /etc/gconf/gconf.xml.mandatory + keepdir /etc/gconf/gconf.xml.defaults + # Make sure this directory exists, bug #268070, upstream #572027 + keepdir /etc/gconf/gconf.xml.system + + echo 'CONFIG_PROTECT_MASK="/etc/gconf"' > 50gconf + doenvd 50gconf || die "doenv failed" + dodir /root/.gconfd +} + +pkg_preinst() { + kill_gconf +} + +pkg_postinst() { + kill_gconf + + # change the permissions to avoid some gconf bugs + einfo "changing permissions for gconf dirs" + find /etc/gconf/ -type d -exec chmod ugo+rx "{}" \; + + einfo "changing permissions for gconf files" + find /etc/gconf/ -type f -exec chmod ugo+r "{}" \; +} + +kill_gconf() { + # This function will kill all running gconfd-2 that could be causing troubles + if [ -x /usr/bin/gconftool-2 ] + then + /usr/bin/gconftool-2 --shutdown + fi + + return 0 +} |