summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--app-text/rarian/ChangeLog8
-rw-r--r--app-text/rarian/files/digest-rarian-0.6.0-r13
-rw-r--r--app-text/rarian/files/rarian-0.6.0-reg-return.patch61
-rw-r--r--app-text/rarian/rarian-0.6.0-r1.ebuild37
4 files changed, 108 insertions, 1 deletions
diff --git a/app-text/rarian/ChangeLog b/app-text/rarian/ChangeLog
index ece4e2f31367..2ad7b74f8113 100644
--- a/app-text/rarian/ChangeLog
+++ b/app-text/rarian/ChangeLog
@@ -1,6 +1,12 @@
# ChangeLog for app-text/rarian
# Copyright 1999-2007 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/app-text/rarian/ChangeLog,v 1.7 2007/10/22 11:20:33 armin76 Exp $
+# $Header: /var/cvsroot/gentoo-x86/app-text/rarian/ChangeLog,v 1.8 2007/10/23 18:33:28 leio Exp $
+
+*rarian-0.6.0-r1 (23 Oct 2007)
+
+ 23 Oct 2007; <leio@gentoo.org> +files/rarian-0.6.0-reg-return.patch,
+ +rarian-0.6.0-r1.ebuild:
+ Fix memory clobbering leading to outright crash on at least sparc and ia64
22 Oct 2007; Raúl Porcel <armin76@gentoo.org> rarian-0.6.0.ebuild:
Add ~alpha wrt #196360
diff --git a/app-text/rarian/files/digest-rarian-0.6.0-r1 b/app-text/rarian/files/digest-rarian-0.6.0-r1
new file mode 100644
index 000000000000..60868206e2a0
--- /dev/null
+++ b/app-text/rarian/files/digest-rarian-0.6.0-r1
@@ -0,0 +1,3 @@
+MD5 23772a3b0f882d13c86dd9fa67bb21bf rarian-0.6.0.tar.bz2 312258
+RMD160 167c02f58e493c624d0eedb1137928c7a7cc452a rarian-0.6.0.tar.bz2 312258
+SHA256 2f169f3c794b2602d8590b1fd16c0aa5b7ca77e993f74b89c4f42db74c1d2029 rarian-0.6.0.tar.bz2 312258
diff --git a/app-text/rarian/files/rarian-0.6.0-reg-return.patch b/app-text/rarian/files/rarian-0.6.0-reg-return.patch
new file mode 100644
index 000000000000..50bdf2d27480
--- /dev/null
+++ b/app-text/rarian/files/rarian-0.6.0-reg-return.patch
@@ -0,0 +1,61 @@
+Patch from comment #2 on https://bugs.freedesktop.org/show_bug.cgi?id=12279
+Fixes crash on sparc and ia64 and might fix weird issues on other arches as this is about memory clobbering
+
+--- rarian-0.6.0.old/librarian/rarian-reg-full.c 2007-10-16 16:33:02.685297000 +0100
++++ rarian-0.6.0/librarian/rarian-reg-full.c 2007-10-16 16:38:24.553412000 +0100
+@@ -59,6 +59,8 @@
+ reg->heritage = NULL;
+ reg->lang = NULL;
+ reg->children = NULL;
++
++ return (reg);
+ }
+
+ RrnRegFull *
+--- rarian-0.6.0.old/librarian/rarian-reg-utils.c 2007-10-16 16:33:02.683296000 +0100
++++ rarian-0.6.0/librarian/rarian-reg-utils.c 2007-10-16 16:38:43.173230000 +0100
+@@ -36,7 +36,7 @@
+ static void process_sect_pair (RrnSect *sect, char *key, char *value);
+ static int rrn_reg_add_sect (RrnReg *reg, RrnSect *sect);
+ static void process_path (RrnReg *reg);
+-static char * process_section_path (char *owner_path, RrnSect *section);
++static void process_section_path (char *owner_path, RrnSect *section);
+
+
+ RrnReg *
+@@ -58,6 +58,8 @@
+ reg->lang = NULL;
+ reg->ghelp_name = NULL;
+ reg->children = NULL;
++
++ return (reg);
+ }
+
+ RrnReg *
+@@ -748,7 +750,7 @@
+
+ }
+
+-static char *
++static void
+ process_section_path (char *owner_path, RrnSect *section)
+ {
+ char *tmp = NULL;
+--- rarian-0.6.0.old/librarian/rarian-info.c 2007-10-16 16:33:02.684297000 +0100
++++ rarian-0.6.0/librarian/rarian-info.c 2007-10-16 16:37:02.125582000 +0100
+@@ -614,13 +614,13 @@
+ if (!section || (*section && l->reg->section && !strcmp (l->reg->section, section))) {
+ return l->reg;
+ } else {
+- best_result = l->reg;
++ best_result = l;
+ }
+ }
+ l = l->next;
+ }
+
+- return best_result;
++ return best_result->reg;
+
+ }
+
diff --git a/app-text/rarian/rarian-0.6.0-r1.ebuild b/app-text/rarian/rarian-0.6.0-r1.ebuild
new file mode 100644
index 000000000000..92661079119a
--- /dev/null
+++ b/app-text/rarian/rarian-0.6.0-r1.ebuild
@@ -0,0 +1,37 @@
+# Copyright 1999-2007 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/app-text/rarian/rarian-0.6.0-r1.ebuild,v 1.1 2007/10/23 18:33:28 leio Exp $
+
+inherit eutils gnome2
+
+DESCRIPTION="A documentation metadata library"
+HOMEPAGE="www.freedesktop.org"
+
+LICENSE="LGPL-2.1"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~hppa ~sparc-fbsd ~x86 ~x86-fbsd"
+IUSE=""
+
+RDEPEND="dev-libs/libxslt"
+DEPEND="${RDEPEND}
+ !<app-text/scrollkeeper-9999"
+
+DOCS="ChangeLog NEWS README"
+
+GCONF=""
+
+src_unpack() {
+ # You cannot run src_unpack from gnome2; it will break the install by
+ # calling gnome2_omf_fix
+ unpack ${A}
+ cd "${S}"
+
+ # Only GNU getopt supports long options
+ # Scrollkeeper didn't support them, so we'll punt them for now
+ epatch "${FILESDIR}/${P}-posix-getopt.patch"
+
+ # Fix memory clobbering leading to outright crash on sparc and ia64
+ epatch "${FILESDIR}/${P}-reg-return.patch"
+
+ elibtoolize ${ELTCONF}
+}