texlive[72346] Build/source/texk/dvipdfm-x: dvipdfm-x: More strict

commits+takuji at tug.org commits+takuji at tug.org
Sun Sep 22 07:07:27 CEST 2024


Revision: 72346
          https://tug.org/svn/texlive?view=revision&revision=72346
Author:   takuji
Date:     2024-09-22 07:07:26 +0200 (Sun, 22 Sep 2024)
Log Message:
-----------
dvipdfm-x: More strict check of OFM FONTDIR for pTeX

Modified Paths:
--------------
    trunk/Build/source/texk/dvipdfm-x/ChangeLog
    trunk/Build/source/texk/dvipdfm-x/configure
    trunk/Build/source/texk/dvipdfm-x/configure.ac
    trunk/Build/source/texk/dvipdfm-x/tfm.c

Modified: trunk/Build/source/texk/dvipdfm-x/ChangeLog
===================================================================
--- trunk/Build/source/texk/dvipdfm-x/ChangeLog	2024-09-22 05:07:20 UTC (rev 72345)
+++ trunk/Build/source/texk/dvipdfm-x/ChangeLog	2024-09-22 05:07:26 UTC (rev 72346)
@@ -1,3 +1,11 @@
+2024-09-22  TANAKA Takuji  <ttk at t-lab.opal.ne.jp>
+
+	* tfm.c: More strict check to interpret OFM FONTDIR
+	as pTeX vertical writing.
+	https://github.com/texjporg/tex-jp-build/issues/170#issuecomment-2295037307
+	https://github.com/texjporg/tex-jp-build/issues/99
+	* configure.ac: version 20240922.
+
 2024-05-18  TANAKA Takuji  <ttk at t-lab.opal.ne.jp>
 
 	* dvi.c: Remove obsolete comments.

Modified: trunk/Build/source/texk/dvipdfm-x/configure
===================================================================
--- trunk/Build/source/texk/dvipdfm-x/configure	2024-09-22 05:07:20 UTC (rev 72345)
+++ trunk/Build/source/texk/dvipdfm-x/configure	2024-09-22 05:07:26 UTC (rev 72346)
@@ -1,6 +1,6 @@
 #! /bin/sh
 # Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.72 for dvipdfm-x (TeX Live) 20240511.
+# Generated by GNU Autoconf 2.72 for dvipdfm-x (TeX Live) 20240922.
 #
 # Report bugs to <dvipdfmx at tug.org>.
 #
@@ -614,8 +614,8 @@
 # Identity of this package.
 PACKAGE_NAME='dvipdfm-x (TeX Live)'
 PACKAGE_TARNAME='dvipdfm-x--tex-live-'
-PACKAGE_VERSION='20240511'
-PACKAGE_STRING='dvipdfm-x (TeX Live) 20240511'
+PACKAGE_VERSION='20240922'
+PACKAGE_STRING='dvipdfm-x (TeX Live) 20240922'
 PACKAGE_BUGREPORT='dvipdfmx at tug.org'
 PACKAGE_URL=''
 
@@ -1385,7 +1385,7 @@
   # Omit some internal or obsolete options to make the list less imposing.
   # This message is too long to be a string in the A/UX 3.1 sh.
   cat <<_ACEOF
-'configure' configures dvipdfm-x (TeX Live) 20240511 to adapt to many kinds of systems.
+'configure' configures dvipdfm-x (TeX Live) 20240922 to adapt to many kinds of systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
@@ -1457,7 +1457,7 @@
 
 if test -n "$ac_init_help"; then
   case $ac_init_help in
-     short | recursive ) echo "Configuration of dvipdfm-x (TeX Live) 20240511:";;
+     short | recursive ) echo "Configuration of dvipdfm-x (TeX Live) 20240922:";;
    esac
   cat <<\_ACEOF
 
@@ -1588,7 +1588,7 @@
 test -n "$ac_init_help" && exit $ac_status
 if $ac_init_version; then
   cat <<\_ACEOF
-dvipdfm-x (TeX Live) configure 20240511
+dvipdfm-x (TeX Live) configure 20240922
 generated by GNU Autoconf 2.72
 
 Copyright (C) 2023 Free Software Foundation, Inc.
@@ -2369,7 +2369,7 @@
 This file contains any messages produced by compilers while
 running configure, to aid debugging if configure makes a mistake.
 
-It was created by dvipdfm-x (TeX Live) $as_me 20240511, which was
+It was created by dvipdfm-x (TeX Live) $as_me 20240922, which was
 generated by GNU Autoconf 2.72.  Invocation command line was
 
   $ $0$ac_configure_args_raw
@@ -9263,7 +9263,7 @@
 
 # Define the identity of the package.
  PACKAGE='dvipdfm-x--tex-live-'
- VERSION='20240511'
+ VERSION='20240922'
 
 
 printf "%s\n" "#define PACKAGE \"$PACKAGE\"" >>confdefs.h
@@ -16305,7 +16305,7 @@
 Report bugs to <bug-libtool at gnu.org>."
 
 lt_cl_version="\
-dvipdfm-x (TeX Live) config.lt 20240511
+dvipdfm-x (TeX Live) config.lt 20240922
 configured by $0, generated by GNU Autoconf 2.72.
 
 Copyright (C) 2011 Free Software Foundation, Inc.
@@ -18260,7 +18260,7 @@
 # report actual input values of CONFIG_FILES etc. instead of their
 # values after options handling.
 ac_log="
-This file was extended by dvipdfm-x (TeX Live) $as_me 20240511, which was
+This file was extended by dvipdfm-x (TeX Live) $as_me 20240922, which was
 generated by GNU Autoconf 2.72.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
@@ -18332,7 +18332,7 @@
 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
 ac_cs_config='$ac_cs_config_escaped'
 ac_cs_version="\\
-dvipdfm-x (TeX Live) config.status 20240511
+dvipdfm-x (TeX Live) config.status 20240922
 configured by $0, generated by GNU Autoconf 2.72,
   with options \\"\$ac_cs_config\\"
 

Modified: trunk/Build/source/texk/dvipdfm-x/configure.ac
===================================================================
--- trunk/Build/source/texk/dvipdfm-x/configure.ac	2024-09-22 05:07:20 UTC (rev 72345)
+++ trunk/Build/source/texk/dvipdfm-x/configure.ac	2024-09-22 05:07:26 UTC (rev 72346)
@@ -8,7 +8,7 @@
 dnl   gives unlimited permission to copy and/or distribute it,
 dnl   with or without modifications, as long as this notice is preserved.
 dnl
-AC_INIT([dvipdfm-x (TeX Live)], [20240511], [dvipdfmx at tug.org])
+AC_INIT([dvipdfm-x (TeX Live)], [20240922], [dvipdfmx at tug.org])
 AC_PREREQ([2.65])
 AC_CONFIG_SRCDIR([agl.c])
 AC_CONFIG_AUX_DIR([../../build-aux])

Modified: trunk/Build/source/texk/dvipdfm-x/tfm.c
===================================================================
--- trunk/Build/source/texk/dvipdfm-x/tfm.c	2024-09-22 05:07:20 UTC (rev 72345)
+++ trunk/Build/source/texk/dvipdfm-x/tfm.c	2024-09-22 05:07:26 UTC (rev 72346)
@@ -56,6 +56,8 @@
 #define CHARACTER_INDEX(i)  ((i))
 #endif
 
+#define IS_WIDE_CHAR(i)     (((i)>=0x2E80 && !(0xFB00<=(i) && (i)<=0xFB06)))
+
 /*
  * TFM Record structure:
  * Multiple TFM's may be read in at once.
@@ -77,7 +79,7 @@
   uint32_t nitcor, nlig, nkern, nextens;
   uint32_t nfonparm;
 #ifndef WITHOUT_OMEGA
-  uint32_t fontdir;
+  uint32_t fontdir, iswide;
   uint32_t nco, ncw, npc;
 #endif /* !WITHOUT_OMEGA */
   fixword       *header;
@@ -105,6 +107,7 @@
 #ifndef WITHOUT_OMEGA
   tfm->level   = 0;
   tfm->fontdir = 0;
+  tfm->iswide  = 0;
   tfm->nco = tfm->ncw = tfm->npc = 0;
 #endif
   tfm->char_info    = NULL;
@@ -263,7 +266,7 @@
   fixword  designsize;
   char    *codingscheme;
 
-  int  level, fontdir;
+  int  level, fontdir, iswide;
   int firstchar, lastchar;
   
   fixword *widths;
@@ -742,6 +745,9 @@
 	tfm->height_index[i+j+1] = tfm->height_index[i];
 	tfm->depth_index [i+j+1] = tfm->depth_index [i];
       }
+      if (IS_WIDE_CHAR(i) || IS_WIDE_CHAR(i+repeats)) {
+        tfm->iswide = 1;
+      }
       /* Skip ahead because we have already handled repeats */
       i += repeats;
     }
@@ -804,6 +810,7 @@
   fm->lastchar  = tfm.ec;
   fm->level     = tfm.level;
   fm->source    = SOURCE_TYPE_OFM;
+  fm->iswide    = tfm.iswide;
 
   tfm_font_clear(&tfm);
 
@@ -1266,7 +1273,7 @@
   if (fms[font_id].source == SOURCE_TYPE_JFM) is_jfm = 1;
 #ifndef WITHOUT_OMEGA
   if (fms[font_id].source == SOURCE_TYPE_OFM
-      && fms[font_id].level == 1 && fms[font_id].lastchar >= 0x2E00) is_jfm = 2;
+      && fms[font_id].level == 1 && fms[font_id].iswide == 1) is_jfm = 2;
 #endif
 
   return is_jfm;



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