summaryrefslogtreecommitdiff
path: root/Build
diff options
context:
space:
mode:
authorAkira Kakuto <kakuto@fuk.kindai.ac.jp>2014-08-24 21:58:10 +0000
committerAkira Kakuto <kakuto@fuk.kindai.ac.jp>2014-08-24 21:58:10 +0000
commitccb98061a257ee9db378e34301646d7e05ecc957 (patch)
tree384a728d27cd75c3f059d64e1d88ff7170ff1199 /Build
parentb96aca1b0ee11148da514afa461dcb9e88eda0b2 (diff)
texk/dvipdfm-x: Fix a bug in type1 handling (by S. Hirata)
git-svn-id: svn://tug.org/texlive/trunk@35035 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Build')
-rw-r--r--Build/source/texk/dvipdfm-x/ChangeLog5
-rw-r--r--Build/source/texk/dvipdfm-x/t1_char.c6
2 files changed, 8 insertions, 3 deletions
diff --git a/Build/source/texk/dvipdfm-x/ChangeLog b/Build/source/texk/dvipdfm-x/ChangeLog
index 1bf82d03329..453ffc7fa5c 100644
--- a/Build/source/texk/dvipdfm-x/ChangeLog
+++ b/Build/source/texk/dvipdfm-x/ChangeLog
@@ -1,3 +1,8 @@
+2014-08-24 Shunsaku Hirata <shunsaku.hirata74@gmail.com>
+
+ * t1_char.c: Fix a bug in type1 handling reported by Bob Tennent
+ (http://tug.org/pipermail/tex-live/2014-June/035580.html).
+
2014-08-22 TANAKA Takuji <KXD02663@nifty.ne.jp>
* error.h: Allow Unicode messages on Windows console.
diff --git a/Build/source/texk/dvipdfm-x/t1_char.c b/Build/source/texk/dvipdfm-x/t1_char.c
index cb8145e6424..c935e027668 100644
--- a/Build/source/texk/dvipdfm-x/t1_char.c
+++ b/Build/source/texk/dvipdfm-x/t1_char.c
@@ -1141,7 +1141,7 @@ do_postproc (t1_chardesc *cd)
if ((b).lly > (y)) (b).lly = (y);\
if ((b).ury < (y)) (b).ury = (y);\
} while (0)
-#define TRY_COMPACT (prev && cur && ((prev->num_args + cur->num_args) <= CS_ARG_STACK_MAX))
+#define TRY_COMPACT (prev && cur && ((prev->num_args + cur->num_args) < CS_ARG_STACK_MAX))
while (cur != NULL) {
next = cur->next;
@@ -1405,7 +1405,7 @@ t1char_encode_charpath (t1_chardesc *cd,
put_numbers(stem, 2, &dst, endptr);
CHECK_STATUS();
reset = 0;
- if (2*num_hstems == CS_ARG_STACK_MAX) {
+ if (2*num_hstems > CS_ARG_STACK_MAX - 3) {
CHECK_BUFFER(1);
*dst++ = (card8) ((cd->flags & T1_CS_FLAG_USE_HINTMASK) ? cs_hstemhm : cs_hstem);
reset = 1;
@@ -1426,7 +1426,7 @@ t1char_encode_charpath (t1_chardesc *cd,
put_numbers(stem, 2, &dst, endptr);
CHECK_STATUS();
reset = 0;
- if (2*num_vstems == CS_ARG_STACK_MAX) {
+ if (2*num_vstems > CS_ARG_STACK_MAX - 3) {
CHECK_BUFFER(1);
*dst++ = (card8) ((cd->flags & T1_CS_FLAG_USE_HINTMASK) ? cs_vstemhm : cs_vstem);
reset = 1;