texlive[68079] Build/source/texk: sync writet1.c fix to dvipsk and

commits+karl at tug.org commits+karl at tug.org
Sun Aug 27 00:16:10 CEST 2023


Revision: 68079
          http://tug.org/svn/texlive?view=revision&revision=68079
Author:   karl
Date:     2023-08-27 00:16:10 +0200 (Sun, 27 Aug 2023)
Log Message:
-----------
sync writet1.c fix to dvipsk and luatexdir

Modified Paths:
--------------
    trunk/Build/source/texk/dvipsk/ChangeLog
    trunk/Build/source/texk/dvipsk/writet1.c
    trunk/Build/source/texk/web2c/luatexdir/font/writet1.c
    trunk/Build/source/texk/web2c/omegafonts/ChangeLog
    trunk/Build/source/texk/web2c/omegafonts/ligkern.test
    trunk/Build/source/texk/web2c/omegaware/ligkern.test

Modified: trunk/Build/source/texk/dvipsk/ChangeLog
===================================================================
--- trunk/Build/source/texk/dvipsk/ChangeLog	2023-08-26 20:49:55 UTC (rev 68078)
+++ trunk/Build/source/texk/dvipsk/ChangeLog	2023-08-26 22:16:10 UTC (rev 68079)
@@ -1,3 +1,8 @@
+2023-08-26  Karl Berry  <karl at freefriends.org>
+
+	* writet1.c (t1_builtin_enc): sync change from pdftexdir/writet1.c
+	(r68069).
+
 2023-08-11  TANAKA Takuji  <ttk at t-lab.opal.ne.jp>
 
 	* beginfontk1.test, eepic-nan.test, pfbincl.test, same-name.test,

Modified: trunk/Build/source/texk/dvipsk/writet1.c
===================================================================
--- trunk/Build/source/texk/dvipsk/writet1.c	2023-08-26 20:49:55 UTC (rev 68078)
+++ trunk/Build/source/texk/dvipsk/writet1.c	2023-08-26 22:16:10 UTC (rev 68079)
@@ -1,5 +1,5 @@
 /*
-Copyright 1996-2018 Han The Thanh <thanh at pdftex.org>
+Copyright 1996-2023 Han The Thanh <thanh at pdftex.org>
 
 This program is free software; you can redistribute it and/or modify
 it under the terms of the GNU General Public License as published by
@@ -769,7 +769,10 @@
                 *t1_buf_array == '/' && valid_code(i)) {
                 if (strcmp(t1_buf_array + 1, notdef) != 0)
                     glyph_names[i] = xstrdup(t1_buf_array + 1);
-                p = strstr(p, " put") + strlen(" put");
+                p = strstr(p, " put");
+                if (!p)
+                    pdftex_fail("invalid pfb, no put found in dup");
+                p += strlen(" put");
                 skip(p, ' ');
             }
             /*
@@ -778,7 +781,10 @@
             else if (sscanf(p, "dup dup %i exch %i get put", &b, &a) == 2
                      && valid_code(a) && valid_code(b)) {
                 copy_glyph_names(glyph_names, a, b);
-                p = strstr(p, " get put") + strlen(" get put");
+                p = strstr(p, " get put");
+                if (!p)
+                    pdftex_fail("invalid pfb, no get put found in dup dup");
+                p += strlen(" get put");
                 skip(p, ' ');
             }
             /*
@@ -789,7 +795,10 @@
                      && valid_code(a) && valid_code(b) && valid_code(c)) {
                 for (i = 0; i < c; i++)
                     copy_glyph_names(glyph_names, a + i, b + i);
-                p = strstr(p, " putinterval") + strlen(" putinterval");
+                p = strstr(p, " putinterval");
+                if (!p)
+                   pdftex_fail("invalid pfb, no putinterval found in dup dup");
+                p += strlen(" putinterval");
                 skip(p, ' ');
             }
             /*

Modified: trunk/Build/source/texk/web2c/luatexdir/font/writet1.c
===================================================================
--- trunk/Build/source/texk/web2c/luatexdir/font/writet1.c	2023-08-26 20:49:55 UTC (rev 68078)
+++ trunk/Build/source/texk/web2c/luatexdir/font/writet1.c	2023-08-26 22:16:10 UTC (rev 68079)
@@ -814,13 +814,19 @@
                 *t1_buf_array == '/' && valid_code(i)) {
                 if (strcmp(t1_buf_array + 1, notdef) != 0)
                     glyph_names[i] = xstrdup(t1_buf_array + 1);
-                p = strstr(p, " put") + strlen(" put");
+                p = strstr(p, " put");
+                if (!p)
+                    normal_error("type 1", "invalid pfb, no put found in dup");
+                p += strlen(" put");
                 skip_char(p, ' ');
             }
             /*tex Check for |dup dup <to> exch <from> get put|. */
             else if (sscanf(p, "dup dup %i exch %i get put", &b, &a) == 2 && valid_code(a) && valid_code(b)) {
                 copy_glyph_names(glyph_names, a, b);
-                p = strstr(p, " get put") + strlen(" get put");
+                p = strstr(p, " get put");
+                if (!p)
+                    normal_error("type 1", "invalid pfb, no get put found in dup dup");
+                p += strlen(" get put");
                 skip_char(p, ' ');
             }
             /*tex Check for |dup dup <from> <size> getinterval <to> exch putinterval|. */
@@ -828,7 +834,10 @@
                     &a, &c, &b) == 3 && valid_code(a) && valid_code(b) && valid_code(c)) {
                 for (i = 0; i < c; i++)
                     copy_glyph_names(glyph_names, a + i, b + i);
-                p = strstr(p, " putinterval") + strlen(" putinterval");
+                p = strstr(p, " putinterval");
+                if (!p)
+                   normal_error("type 1", "invalid pfb, no putinterval found in dup dup");
+                p += strlen(" putinterval");
                 skip_char(p, ' ');
             }
             /*tex Check for |def or |readonly def|. */

Modified: trunk/Build/source/texk/web2c/omegafonts/ChangeLog
===================================================================
--- trunk/Build/source/texk/web2c/omegafonts/ChangeLog	2023-08-26 20:49:55 UTC (rev 68078)
+++ trunk/Build/source/texk/web2c/omegafonts/ChangeLog	2023-08-26 22:16:10 UTC (rev 68079)
@@ -1,3 +1,7 @@
+2023-08-26  Karl Berry  <karl at freefriends.org>
+
+	* ligkern.test: protect against $rc being defined in the environment.
+
 2023-08-19  TANAKA Takuji  <ttk at t-lab.opal.ne.jp>
 
 	* {bad,charwd,check,help,level1,ligkern,ofonts,

Modified: trunk/Build/source/texk/web2c/omegafonts/ligkern.test
===================================================================
--- trunk/Build/source/texk/web2c/omegafonts/ligkern.test	2023-08-26 20:49:55 UTC (rev 68078)
+++ trunk/Build/source/texk/web2c/omegafonts/ligkern.test	2023-08-26 22:16:10 UTC (rev 68079)
@@ -1,6 +1,6 @@
 #! /bin/sh -vx
 # $Id$
-# Copyright 2017 Karl Berry <tex-live at tug.org>
+# Copyright 2017-2023 Karl Berry <tex-live at tug.org>
 # Copyright 2014 Peter Breitenlohner <tex-live at tug.org>
 # You may freely use, modify and/or distribute this file.
 
@@ -18,17 +18,17 @@
 
 ligfiles='ligall ligbch ligblb ligbdy'
 
+rc=0
+
 for f in $ligfiles; do
+  echo && echo "*** opl2ofm $f x$f"
+  $_omfonts -opl2ofm $srcdir/$tests/$f $tests/x$f || rc=1
 
-echo && echo "*** opl2ofm $f x$f"
-$_omfonts -opl2ofm $srcdir/$tests/$f $tests/x$f || rc=1
+  echo && echo "*** ofm2opl x$f x$f"
+  $_omfonts -ofm2opl $tests/x$f $tests/x$f || rc=2
 
-echo && echo "*** ofm2opl x$f x$f"
-$_omfonts -ofm2opl $tests/x$f $tests/x$f || rc=2
-
-echo && echo "*** diff $f.opl x$f.opl"
-diff $srcdir/$tests/$f.opl $tests/x$f.opl || rc=3
-
+  echo && echo "*** diff $f.opl x$f.opl"
+  diff $srcdir/$tests/$f.opl $tests/x$f.opl || rc=3
 done
 
 echo && echo "*** ovp2ovf ligblv xligblv xligblv"

Modified: trunk/Build/source/texk/web2c/omegaware/ligkern.test
===================================================================
--- trunk/Build/source/texk/web2c/omegaware/ligkern.test	2023-08-26 20:49:55 UTC (rev 68078)
+++ trunk/Build/source/texk/web2c/omegaware/ligkern.test	2023-08-26 22:16:10 UTC (rev 68079)
@@ -1,6 +1,6 @@
 #! /bin/sh -vx
 # $Id$
-# Copyright 2017-2018 Karl Berry <tex-live at tug.org>
+# Copyright 2017-2023 Karl Berry <tex-live at tug.org>
 # Copyright 2014 Peter Breitenlohner <tex-live at tug.org>
 # You may freely use, modify and/or distribute this file.
 



More information about the tex-live-commits mailing list.