summaryrefslogtreecommitdiff
path: root/Build/source/texk/web2c
diff options
context:
space:
mode:
authorPeter Breitenlohner <peb@mppmu.mpg.de>2010-06-16 09:08:58 +0000
committerPeter Breitenlohner <peb@mppmu.mpg.de>2010-06-16 09:08:58 +0000
commitf6c4bdaca5e0d9dfb2dd9794af2e74bbd782f9dc (patch)
treed581381d170993c1dc69a3e033087f345a35c386 /Build/source/texk/web2c
parenteab1240aff5ecfc31f006b539eab5c43b0857a6f (diff)
fix omegafonts bug, causing OpenBSD Bus error
git-svn-id: svn://tug.org/texlive/trunk@19002 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Build/source/texk/web2c')
-rw-r--r--Build/source/texk/web2c/omegafonts/ChangeLog6
-rw-r--r--Build/source/texk/web2c/omegafonts/char_routines.c3
2 files changed, 8 insertions, 1 deletions
diff --git a/Build/source/texk/web2c/omegafonts/ChangeLog b/Build/source/texk/web2c/omegafonts/ChangeLog
index 5aeb2dac062..798393b2cad 100644
--- a/Build/source/texk/web2c/omegafonts/ChangeLog
+++ b/Build/source/texk/web2c/omegafonts/ChangeLog
@@ -1,3 +1,9 @@
+2010-06-16 Peter Breitenlohner <peb@mppmu.mpg.de>
+
+ * char_routines.c (ensure_existence): Avoid OpenBSD Bus error
+ caused by faulty logic.
+ Reported by Edd Barrett, 10 Jun 2010 13:33:03.
+
2010-03-01 Peter Breitenlohner <peb@mppmu.mpg.de>
* char_routines.c (check_existence_all_character_fields):
diff --git a/Build/source/texk/web2c/omegafonts/char_routines.c b/Build/source/texk/web2c/omegafonts/char_routines.c
index ecb1699e0d2..87e6d7f553e 100644
--- a/Build/source/texk/web2c/omegafonts/char_routines.c
+++ b/Build/source/texk/web2c/omegafonts/char_routines.c
@@ -185,7 +185,8 @@ ensure_existence(unsigned c)
plane = c / PLANE;
index = c % PLANE;
- if ((plane>plane_max) || (planes[plane]==NULL) || (planes[plane][index]==NULL)) {
+ if ((plane>plane_max) || (planes[plane]==NULL) ||
+ (index>char_max[plane]) || (planes[plane][index]==NULL)) {
init_character(c, NULL);
planes[plane][index]->defined = FALSE;
}