texlive[47709] Build/source/texk/dvipdfm-x: Allow image file names

commits+kakuto at tug.org commits+kakuto at tug.org
Mon May 14 12:38:46 CEST 2018


Revision: 47709
          http://tug.org/svn/texlive?view=revision&revision=47709
Author:   kakuto
Date:     2018-05-14 12:38:44 +0200 (Mon, 14 May 2018)
Log Message:
-----------
Allow image file names including 0x5c for (e)-pTeX in CP932-like system (Windows only).

Modified Paths:
--------------
    trunk/Build/source/texk/dvipdfm-x/ChangeLog
    trunk/Build/source/texk/dvipdfm-x/pdfparse.c

Modified: trunk/Build/source/texk/dvipdfm-x/ChangeLog
===================================================================
--- trunk/Build/source/texk/dvipdfm-x/ChangeLog	2018-05-14 00:31:14 UTC (rev 47708)
+++ trunk/Build/source/texk/dvipdfm-x/ChangeLog	2018-05-14 10:38:44 UTC (rev 47709)
@@ -1,3 +1,8 @@
+2018-05-14  Akira Kakuto  <kakuto at fuk.kindai.ac.jp>
+
+	* pdfparse.c: Allow image file names including 0x5c for
+	(e)-pTeX in CP932-like system (Windows only).
+
 2018-05-06  Akira Kakuto  <kakuto at fuk.kindai.ac.jp>
 
 	* tt_cmap.c: Revert a part of changes in 2017-12-09,

Modified: trunk/Build/source/texk/dvipdfm-x/pdfparse.c
===================================================================
--- trunk/Build/source/texk/dvipdfm-x/pdfparse.c	2018-05-14 00:31:14 UTC (rev 47708)
+++ trunk/Build/source/texk/dvipdfm-x/pdfparse.c	2018-05-14 10:38:44 UTC (rev 47709)
@@ -503,6 +503,13 @@
 
   while (p < endptr) {
 
+#ifdef _WIN32
+    int check_kanji;
+    if (p > *pp && (IS_KANJI(p-1)))
+      check_kanji = 1;
+    else
+      check_kanji = 0;
+#endif
     ch = p[0];
 
     if (ch == ')' && op_count < 1)
@@ -532,10 +539,22 @@
 
     switch (ch) {
     case '\\':
+#ifdef _WIN32
+      if (check_kanji == 0) {
+        ch = ps_getescc(&p, endptr);
+        if (ch >= 0)
+          sbuf[len++] = (ch & 0xff);
+      } else {
+        sbuf[len++] = ch;
+        p++;
+      }
+      break;
+#else
       ch = ps_getescc(&p, endptr);
       if (ch >= 0)
 	sbuf[len++] = (ch & 0xff);
       break;
+#endif /* _WIN32 */
     case '\r':
       p++;
       if (p < endptr && p[0] == '\n')



More information about the tex-live-commits mailing list