texlive[54923] Build/source/texk/kpathsea: improve long path support

commits+kakuto at tug.org commits+kakuto at tug.org
Tue Apr 28 12:11:20 CEST 2020


Revision: 54923
          http://tug.org/svn/texlive?view=revision&revision=54923
Author:   kakuto
Date:     2020-04-28 12:11:20 +0200 (Tue, 28 Apr 2020)
Log Message:
-----------
improve long path support (windows only)

Modified Paths:
--------------
    trunk/Build/source/texk/kpathsea/ChangeLog
    trunk/Build/source/texk/kpathsea/knj.c
    trunk/Build/source/texk/kpathsea/readable.c

Modified: trunk/Build/source/texk/kpathsea/ChangeLog
===================================================================
--- trunk/Build/source/texk/kpathsea/ChangeLog	2020-04-28 09:54:12 UTC (rev 54922)
+++ trunk/Build/source/texk/kpathsea/ChangeLog	2020-04-28 10:11:20 UTC (rev 54923)
@@ -1,4 +1,4 @@
-2020-04-26  Akira Kakuto  <kakuto at w32tex.org>
+2020-04-28  Akira Kakuto  <kakuto at w32tex.org>
 
 	* readable.c, knj.c: Support very long input path name,
 	longer than _MAX_PATH for Windows, if it really exists and

Modified: trunk/Build/source/texk/kpathsea/knj.c
===================================================================
--- trunk/Build/source/texk/kpathsea/knj.c	2020-04-28 09:54:12 UTC (rev 54922)
+++ trunk/Build/source/texk/kpathsea/knj.c	2020-04-28 10:11:20 UTC (rev 54923)
@@ -126,7 +126,7 @@
 */
     fnn = xmalloc(strlen(filename) + 10);
     if ((filename[0] == '/' && filename[1] == '/') ||
-        (filename[0] == '\\' && filename[1] == '\\')) {
+        (filename[0] == '\\' && filename[1] == '\\' filename[2] != '?')) {
        filename += 2;
        strcpy (fnn, "\\\\?\\UNC\\");
        strcat (fnn, filename);
@@ -182,7 +182,7 @@
 */
     fnn = xmalloc(strlen(filename) + 10);
     if ((filename[0] == '/' && filename[1] == '/') ||
-        (filename[0] == '\\' && filename[1] == '\\')) {
+        (filename[0] == '\\' && filename[1] == '\\' && filename[2] != '?')) {
        filename += 2;
        strcpy (fnn, "\\\\?\\UNC\\");
        strcat (fnn, filename);

Modified: trunk/Build/source/texk/kpathsea/readable.c
===================================================================
--- trunk/Build/source/texk/kpathsea/readable.c	2020-04-28 09:54:12 UTC (rev 54922)
+++ trunk/Build/source/texk/kpathsea/readable.c	2020-04-28 10:11:20 UTC (rev 54923)
@@ -51,7 +51,7 @@
   full-absolute path in a command line.
 */
   if ((fn[0] == '/' && fn[1] == '/') ||
-      (fn[0] == '\\' && fn[1] == '\\')) {
+      (fn[0] == '\\' && fn[1] == '\\' && fn[2] != '?')) {
     fn += 2;
     strcpy (fnn, "\\\\?\\UNC\\");
     strcat (fnn, fn);



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