summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorjvcelak <jvcelak@fedoraproject.org>2010-06-28 17:41:26 +0000
committerjvcelak <jvcelak@fedoraproject.org>2010-06-28 17:41:26 +0000
commit07ee46cd0c2dab3a0b42256df647011dd4e16ced (patch)
tree392669c41cbb84fb61b489f2619f1dcfe344553d
parent4f40b9272cd2b50b36b910e93b7a13f9fa8b9bac (diff)
downloadgroff-07ee46cd0c2dab3a0b42256df647011dd4e16ced.tar.gz
groff-07ee46cd0c2dab3a0b42256df647011dd4e16ced.tar.xz
groff-07ee46cd0c2dab3a0b42256df647011dd4e16ced.zip
Fixes SIGSEGV in get_breakpoint, SIGABRT in make_node (#583982)groff-1_18_1_4-22_fc13
-rw-r--r--groff-1.18.1.4-abrt-make_node-hypen.patch12
-rw-r--r--groff-1.18.1.4-segv-get_breakpoints.patch12
-rw-r--r--groff.spec11
3 files changed, 33 insertions, 2 deletions
diff --git a/groff-1.18.1.4-abrt-make_node-hypen.patch b/groff-1.18.1.4-abrt-make_node-hypen.patch
new file mode 100644
index 0000000..79b4b3b
--- /dev/null
+++ b/groff-1.18.1.4-abrt-make_node-hypen.patch
@@ -0,0 +1,12 @@
+diff -rup groff-1.18.1.4/src/roff/troff/node.cc groff-1.18.1.4.test/src/roff/troff/node.cc
+--- groff-1.18.1.4/src/roff/troff/node.cc 2010-06-28 12:11:58.511549052 +0200
++++ groff-1.18.1.4.test/src/roff/troff/node.cc 2010-06-28 18:34:45.651674069 +0200
+@@ -4625,7 +4625,7 @@ node *make_node(charinfo *ci, environmen
+ case charinfo::TRANSLATE_DUMMY:
+ return new dummy_node;
+ case charinfo::TRANSLATE_HYPHEN_INDICATOR:
+- error("translation to \\% ignored in this context");
++ error("translation to \\%% ignored in this context");
+ break;
+ }
+ charinfo *tem = ci->get_translation();
diff --git a/groff-1.18.1.4-segv-get_breakpoints.patch b/groff-1.18.1.4-segv-get_breakpoints.patch
new file mode 100644
index 0000000..bc62f3b
--- /dev/null
+++ b/groff-1.18.1.4-segv-get_breakpoints.patch
@@ -0,0 +1,12 @@
+diff -rup groff-1.18.1.4/src/roff/troff/node.cc groff-1.18.1.4.test/src/roff/troff/node.cc
+--- groff-1.18.1.4/src/roff/troff/node.cc 2010-06-28 12:11:58.511549052 +0200
++++ groff-1.18.1.4.test/src/roff/troff/node.cc 2010-06-28 17:48:57.663673790 +0200
+@@ -3450,7 +3450,7 @@ int node::nbreaks()
+ breakpoint *space_node::get_breakpoints(hunits width, int ns,
+ breakpoint *rest, int is_inner)
+ {
+- if (next->discardable())
++ if (next && next->discardable())
+ return rest;
+ breakpoint *bp = new breakpoint;
+ bp->next = rest;
diff --git a/groff.spec b/groff.spec
index 919de95..9956745 100644
--- a/groff.spec
+++ b/groff.spec
@@ -3,7 +3,7 @@
Summary: A document formatting system
Name: groff
Version: 1.18.1.4
-Release: 21%{?dist}
+Release: 22%{?dist}
License: GPLv2 and GFDL
Group: Applications/Publishing
URL: http://groff.ffii.org
@@ -28,6 +28,8 @@ Patch13: groff-1.18.1.1-spacefix.patch
Patch14: groff-1.18.1.4-sectmp.patch
Patch15: groff-1.18.1.4-gcc4.3.0.patch
Patch16: groff-groffer.patch
+Patch17: groff-1.18.1.4-segv-get_breakpoints.patch
+Patch18: groff-1.18.1.4-abrt-make_node-hypen.patch
Requires: mktemp
Requires: /sbin/install-info
@@ -91,6 +93,8 @@ System display.
%patch14 -p1 -b .sectmp
%patch15 -p1 -b .gcc43
%patch16 -p1 -b .groffer
+%patch17 -p1 -b .segv-get_breakpoints
+%patch18 -p1 -b .abrt-make_node-hypen
for i in contrib/mm/{groff_mm,groff_mmse,mmroff}.man \
src/devices/grolbp/grolbp.man; do
@@ -207,10 +211,13 @@ exit 0
%endif
%changelog
+* Mon Jun 28 2010 Jan Vcelak <jvcelak@redhat.com> 1.18.1.4-22
+- Fixes SIGSEGV in get_breakpoint, SIGABRT in make_node (#583982).
+
* Thu May 27 2010 Jan Vcelak <jvcelak@redhat.com> 1.18.1.4-21
- Version bump to preserve upgrade path.
-* Wed Apr 6 2010 Jan Vcelak <jvcelak@redhat.com> - 1.18.1.4-20
+* Wed Apr 6 2010 Jan Vcelak <jvcelak@redhat.com> - 1.18.1.4-20
- Fixes not working groffer (#468102).
* Wed Feb 3 2010 Ville Skyttä <ville.skytta@iki.fi> - 1.18.1.4-19