diff options
author | Taco Hoekwater <taco@elvenkind.com> | 2011-06-22 10:59:18 +0000 |
---|---|---|
committer | Taco Hoekwater <taco@elvenkind.com> | 2011-06-22 10:59:18 +0000 |
commit | e9926fd469aff4508bb8cacdfa41eb2186e40ef8 (patch) | |
tree | 6cd9bd4214218d06204986e7b65e3cd7d33bbcfc | |
parent | 97425552ee681cfb80901aa7e68b13a82fad5a1c (diff) |
Previous context mkiv patch for runtime files was problematic:
it always did a deep search on all paths, regardless of whether
or not // was appended to the specification. This commit fixes that.
git-svn-id: svn://tug.org/texlive/trunk@23087 c570f23f-e606-0410-a88d-b1316a301751
25 files changed, 48 insertions, 24 deletions
diff --git a/Build/source/texk/texlive/context/mtxrun b/Build/source/texk/texlive/context/mtxrun index 40c61ef000c..5fbc817e24a 100755 --- a/Build/source/texk/texlive/context/mtxrun +++ b/Build/source/texk/texlive/context/mtxrun @@ -10044,7 +10044,7 @@ local function splitpathexpr(str, newlist, validate) -- I couldn't resist lpeggi if validate then for s in gmatch(str,"[^,]+") do local restoreslashes = false - if gmatch(s, "//$") then restoreslashes = true end + if find(s, "//$") then restoreslashes = true end s = validate(s) if s then n = n + 1 ; t[n] = s @@ -12103,6 +12103,7 @@ local function collect_instance_files(filename,askedformat,allresults) -- todo : local path = pathlist[k] local pathname = lpegmatch(inhibitstripper,path) local doscan = path == pathname -- no ^!! + if not find (pathname, '//$') then doscan = false end done = false -- using file list if filelist then diff --git a/Master/bin/alpha-linux/mtxrun b/Master/bin/alpha-linux/mtxrun index 40c61ef000c..5fbc817e24a 100755 --- a/Master/bin/alpha-linux/mtxrun +++ b/Master/bin/alpha-linux/mtxrun @@ -10044,7 +10044,7 @@ local function splitpathexpr(str, newlist, validate) -- I couldn't resist lpeggi if validate then for s in gmatch(str,"[^,]+") do local restoreslashes = false - if gmatch(s, "//$") then restoreslashes = true end + if find(s, "//$") then restoreslashes = true end s = validate(s) if s then n = n + 1 ; t[n] = s @@ -12103,6 +12103,7 @@ local function collect_instance_files(filename,askedformat,allresults) -- todo : local path = pathlist[k] local pathname = lpegmatch(inhibitstripper,path) local doscan = path == pathname -- no ^!! + if not find (pathname, '//$') then doscan = false end done = false -- using file list if filelist then diff --git a/Master/bin/amd64-freebsd/mtxrun b/Master/bin/amd64-freebsd/mtxrun index 40c61ef000c..5fbc817e24a 100755 --- a/Master/bin/amd64-freebsd/mtxrun +++ b/Master/bin/amd64-freebsd/mtxrun @@ -10044,7 +10044,7 @@ local function splitpathexpr(str, newlist, validate) -- I couldn't resist lpeggi if validate then for s in gmatch(str,"[^,]+") do local restoreslashes = false - if gmatch(s, "//$") then restoreslashes = true end + if find(s, "//$") then restoreslashes = true end s = validate(s) if s then n = n + 1 ; t[n] = s @@ -12103,6 +12103,7 @@ local function collect_instance_files(filename,askedformat,allresults) -- todo : local path = pathlist[k] local pathname = lpegmatch(inhibitstripper,path) local doscan = path == pathname -- no ^!! + if not find (pathname, '//$') then doscan = false end done = false -- using file list if filelist then diff --git a/Master/bin/amd64-kfreebsd/mtxrun b/Master/bin/amd64-kfreebsd/mtxrun index 40c61ef000c..5fbc817e24a 100755 --- a/Master/bin/amd64-kfreebsd/mtxrun +++ b/Master/bin/amd64-kfreebsd/mtxrun @@ -10044,7 +10044,7 @@ local function splitpathexpr(str, newlist, validate) -- I couldn't resist lpeggi if validate then for s in gmatch(str,"[^,]+") do local restoreslashes = false - if gmatch(s, "//$") then restoreslashes = true end + if find(s, "//$") then restoreslashes = true end s = validate(s) if s then n = n + 1 ; t[n] = s @@ -12103,6 +12103,7 @@ local function collect_instance_files(filename,askedformat,allresults) -- todo : local path = pathlist[k] local pathname = lpegmatch(inhibitstripper,path) local doscan = path == pathname -- no ^!! + if not find (pathname, '//$') then doscan = false end done = false -- using file list if filelist then diff --git a/Master/bin/i386-cygwin/mtxrun b/Master/bin/i386-cygwin/mtxrun index 40c61ef000c..5fbc817e24a 100755 --- a/Master/bin/i386-cygwin/mtxrun +++ b/Master/bin/i386-cygwin/mtxrun @@ -10044,7 +10044,7 @@ local function splitpathexpr(str, newlist, validate) -- I couldn't resist lpeggi if validate then for s in gmatch(str,"[^,]+") do local restoreslashes = false - if gmatch(s, "//$") then restoreslashes = true end + if find(s, "//$") then restoreslashes = true end s = validate(s) if s then n = n + 1 ; t[n] = s @@ -12103,6 +12103,7 @@ local function collect_instance_files(filename,askedformat,allresults) -- todo : local path = pathlist[k] local pathname = lpegmatch(inhibitstripper,path) local doscan = path == pathname -- no ^!! + if not find (pathname, '//$') then doscan = false end done = false -- using file list if filelist then diff --git a/Master/bin/i386-freebsd/mtxrun b/Master/bin/i386-freebsd/mtxrun index 40c61ef000c..5fbc817e24a 100755 --- a/Master/bin/i386-freebsd/mtxrun +++ b/Master/bin/i386-freebsd/mtxrun @@ -10044,7 +10044,7 @@ local function splitpathexpr(str, newlist, validate) -- I couldn't resist lpeggi if validate then for s in gmatch(str,"[^,]+") do local restoreslashes = false - if gmatch(s, "//$") then restoreslashes = true end + if find(s, "//$") then restoreslashes = true end s = validate(s) if s then n = n + 1 ; t[n] = s @@ -12103,6 +12103,7 @@ local function collect_instance_files(filename,askedformat,allresults) -- todo : local path = pathlist[k] local pathname = lpegmatch(inhibitstripper,path) local doscan = path == pathname -- no ^!! + if not find (pathname, '//$') then doscan = false end done = false -- using file list if filelist then diff --git a/Master/bin/i386-kfreebsd/mtxrun b/Master/bin/i386-kfreebsd/mtxrun index 40c61ef000c..5fbc817e24a 100755 --- a/Master/bin/i386-kfreebsd/mtxrun +++ b/Master/bin/i386-kfreebsd/mtxrun @@ -10044,7 +10044,7 @@ local function splitpathexpr(str, newlist, validate) -- I couldn't resist lpeggi if validate then for s in gmatch(str,"[^,]+") do local restoreslashes = false - if gmatch(s, "//$") then restoreslashes = true end + if find(s, "//$") then restoreslashes = true end s = validate(s) if s then n = n + 1 ; t[n] = s @@ -12103,6 +12103,7 @@ local function collect_instance_files(filename,askedformat,allresults) -- todo : local path = pathlist[k] local pathname = lpegmatch(inhibitstripper,path) local doscan = path == pathname -- no ^!! + if not find (pathname, '//$') then doscan = false end done = false -- using file list if filelist then diff --git a/Master/bin/i386-linux/mtxrun b/Master/bin/i386-linux/mtxrun index 40c61ef000c..5fbc817e24a 100755 --- a/Master/bin/i386-linux/mtxrun +++ b/Master/bin/i386-linux/mtxrun @@ -10044,7 +10044,7 @@ local function splitpathexpr(str, newlist, validate) -- I couldn't resist lpeggi if validate then for s in gmatch(str,"[^,]+") do local restoreslashes = false - if gmatch(s, "//$") then restoreslashes = true end + if find(s, "//$") then restoreslashes = true end s = validate(s) if s then n = n + 1 ; t[n] = s @@ -12103,6 +12103,7 @@ local function collect_instance_files(filename,askedformat,allresults) -- todo : local path = pathlist[k] local pathname = lpegmatch(inhibitstripper,path) local doscan = path == pathname -- no ^!! + if not find (pathname, '//$') then doscan = false end done = false -- using file list if filelist then diff --git a/Master/bin/i386-netbsd/mtxrun b/Master/bin/i386-netbsd/mtxrun index 40c61ef000c..5fbc817e24a 100755 --- a/Master/bin/i386-netbsd/mtxrun +++ b/Master/bin/i386-netbsd/mtxrun @@ -10044,7 +10044,7 @@ local function splitpathexpr(str, newlist, validate) -- I couldn't resist lpeggi if validate then for s in gmatch(str,"[^,]+") do local restoreslashes = false - if gmatch(s, "//$") then restoreslashes = true end + if find(s, "//$") then restoreslashes = true end s = validate(s) if s then n = n + 1 ; t[n] = s @@ -12103,6 +12103,7 @@ local function collect_instance_files(filename,askedformat,allresults) -- todo : local path = pathlist[k] local pathname = lpegmatch(inhibitstripper,path) local doscan = path == pathname -- no ^!! + if not find (pathname, '//$') then doscan = false end done = false -- using file list if filelist then diff --git a/Master/bin/i386-solaris/mtxrun b/Master/bin/i386-solaris/mtxrun index 40c61ef000c..5fbc817e24a 100755 --- a/Master/bin/i386-solaris/mtxrun +++ b/Master/bin/i386-solaris/mtxrun @@ -10044,7 +10044,7 @@ local function splitpathexpr(str, newlist, validate) -- I couldn't resist lpeggi if validate then for s in gmatch(str,"[^,]+") do local restoreslashes = false - if gmatch(s, "//$") then restoreslashes = true end + if find(s, "//$") then restoreslashes = true end s = validate(s) if s then n = n + 1 ; t[n] = s @@ -12103,6 +12103,7 @@ local function collect_instance_files(filename,askedformat,allresults) -- todo : local path = pathlist[k] local pathname = lpegmatch(inhibitstripper,path) local doscan = path == pathname -- no ^!! + if not find (pathname, '//$') then doscan = false end done = false -- using file list if filelist then diff --git a/Master/bin/mips-irix/mtxrun b/Master/bin/mips-irix/mtxrun index 40c61ef000c..5fbc817e24a 100755 --- a/Master/bin/mips-irix/mtxrun +++ b/Master/bin/mips-irix/mtxrun @@ -10044,7 +10044,7 @@ local function splitpathexpr(str, newlist, validate) -- I couldn't resist lpeggi if validate then for s in gmatch(str,"[^,]+") do local restoreslashes = false - if gmatch(s, "//$") then restoreslashes = true end + if find(s, "//$") then restoreslashes = true end s = validate(s) if s then n = n + 1 ; t[n] = s @@ -12103,6 +12103,7 @@ local function collect_instance_files(filename,askedformat,allresults) -- todo : local path = pathlist[k] local pathname = lpegmatch(inhibitstripper,path) local doscan = path == pathname -- no ^!! + if not find (pathname, '//$') then doscan = false end done = false -- using file list if filelist then diff --git a/Master/bin/powerpc-aix/mtxrun b/Master/bin/powerpc-aix/mtxrun index 40c61ef000c..5fbc817e24a 100755 --- a/Master/bin/powerpc-aix/mtxrun +++ b/Master/bin/powerpc-aix/mtxrun @@ -10044,7 +10044,7 @@ local function splitpathexpr(str, newlist, validate) -- I couldn't resist lpeggi if validate then for s in gmatch(str,"[^,]+") do local restoreslashes = false - if gmatch(s, "//$") then restoreslashes = true end + if find(s, "//$") then restoreslashes = true end s = validate(s) if s then n = n + 1 ; t[n] = s @@ -12103,6 +12103,7 @@ local function collect_instance_files(filename,askedformat,allresults) -- todo : local path = pathlist[k] local pathname = lpegmatch(inhibitstripper,path) local doscan = path == pathname -- no ^!! + if not find (pathname, '//$') then doscan = false end done = false -- using file list if filelist then diff --git a/Master/bin/powerpc-linux/mtxrun b/Master/bin/powerpc-linux/mtxrun index 40c61ef000c..5fbc817e24a 100755 --- a/Master/bin/powerpc-linux/mtxrun +++ b/Master/bin/powerpc-linux/mtxrun @@ -10044,7 +10044,7 @@ local function splitpathexpr(str, newlist, validate) -- I couldn't resist lpeggi if validate then for s in gmatch(str,"[^,]+") do local restoreslashes = false - if gmatch(s, "//$") then restoreslashes = true end + if find(s, "//$") then restoreslashes = true end s = validate(s) if s then n = n + 1 ; t[n] = s @@ -12103,6 +12103,7 @@ local function collect_instance_files(filename,askedformat,allresults) -- todo : local path = pathlist[k] local pathname = lpegmatch(inhibitstripper,path) local doscan = path == pathname -- no ^!! + if not find (pathname, '//$') then doscan = false end done = false -- using file list if filelist then diff --git a/Master/bin/sparc-linux/mtxrun b/Master/bin/sparc-linux/mtxrun index 40c61ef000c..5fbc817e24a 100755 --- a/Master/bin/sparc-linux/mtxrun +++ b/Master/bin/sparc-linux/mtxrun @@ -10044,7 +10044,7 @@ local function splitpathexpr(str, newlist, validate) -- I couldn't resist lpeggi if validate then for s in gmatch(str,"[^,]+") do local restoreslashes = false - if gmatch(s, "//$") then restoreslashes = true end + if find(s, "//$") then restoreslashes = true end s = validate(s) if s then n = n + 1 ; t[n] = s @@ -12103,6 +12103,7 @@ local function collect_instance_files(filename,askedformat,allresults) -- todo : local path = pathlist[k] local pathname = lpegmatch(inhibitstripper,path) local doscan = path == pathname -- no ^!! + if not find (pathname, '//$') then doscan = false end done = false -- using file list if filelist then diff --git a/Master/bin/sparc-solaris/mtxrun b/Master/bin/sparc-solaris/mtxrun index 40c61ef000c..5fbc817e24a 100755 --- a/Master/bin/sparc-solaris/mtxrun +++ b/Master/bin/sparc-solaris/mtxrun @@ -10044,7 +10044,7 @@ local function splitpathexpr(str, newlist, validate) -- I couldn't resist lpeggi if validate then for s in gmatch(str,"[^,]+") do local restoreslashes = false - if gmatch(s, "//$") then restoreslashes = true end + if find(s, "//$") then restoreslashes = true end s = validate(s) if s then n = n + 1 ; t[n] = s @@ -12103,6 +12103,7 @@ local function collect_instance_files(filename,askedformat,allresults) -- todo : local path = pathlist[k] local pathname = lpegmatch(inhibitstripper,path) local doscan = path == pathname -- no ^!! + if not find (pathname, '//$') then doscan = false end done = false -- using file list if filelist then diff --git a/Master/bin/universal-darwin/mtxrun b/Master/bin/universal-darwin/mtxrun index 40c61ef000c..5fbc817e24a 100755 --- a/Master/bin/universal-darwin/mtxrun +++ b/Master/bin/universal-darwin/mtxrun @@ -10044,7 +10044,7 @@ local function splitpathexpr(str, newlist, validate) -- I couldn't resist lpeggi if validate then for s in gmatch(str,"[^,]+") do local restoreslashes = false - if gmatch(s, "//$") then restoreslashes = true end + if find(s, "//$") then restoreslashes = true end s = validate(s) if s then n = n + 1 ; t[n] = s @@ -12103,6 +12103,7 @@ local function collect_instance_files(filename,askedformat,allresults) -- todo : local path = pathlist[k] local pathname = lpegmatch(inhibitstripper,path) local doscan = path == pathname -- no ^!! + if not find (pathname, '//$') then doscan = false end done = false -- using file list if filelist then diff --git a/Master/bin/win32/mtxrun.lua b/Master/bin/win32/mtxrun.lua index 40c61ef000c..5fbc817e24a 100755 --- a/Master/bin/win32/mtxrun.lua +++ b/Master/bin/win32/mtxrun.lua @@ -10044,7 +10044,7 @@ local function splitpathexpr(str, newlist, validate) -- I couldn't resist lpeggi if validate then for s in gmatch(str,"[^,]+") do local restoreslashes = false - if gmatch(s, "//$") then restoreslashes = true end + if find(s, "//$") then restoreslashes = true end s = validate(s) if s then n = n + 1 ; t[n] = s @@ -12103,6 +12103,7 @@ local function collect_instance_files(filename,askedformat,allresults) -- todo : local path = pathlist[k] local pathname = lpegmatch(inhibitstripper,path) local doscan = path == pathname -- no ^!! + if not find (pathname, '//$') then doscan = false end done = false -- using file list if filelist then diff --git a/Master/bin/x86_64-darwin/mtxrun b/Master/bin/x86_64-darwin/mtxrun index 40c61ef000c..5fbc817e24a 100755 --- a/Master/bin/x86_64-darwin/mtxrun +++ b/Master/bin/x86_64-darwin/mtxrun @@ -10044,7 +10044,7 @@ local function splitpathexpr(str, newlist, validate) -- I couldn't resist lpeggi if validate then for s in gmatch(str,"[^,]+") do local restoreslashes = false - if gmatch(s, "//$") then restoreslashes = true end + if find(s, "//$") then restoreslashes = true end s = validate(s) if s then n = n + 1 ; t[n] = s @@ -12103,6 +12103,7 @@ local function collect_instance_files(filename,askedformat,allresults) -- todo : local path = pathlist[k] local pathname = lpegmatch(inhibitstripper,path) local doscan = path == pathname -- no ^!! + if not find (pathname, '//$') then doscan = false end done = false -- using file list if filelist then diff --git a/Master/bin/x86_64-linux/mtxrun b/Master/bin/x86_64-linux/mtxrun index 40c61ef000c..5fbc817e24a 100755 --- a/Master/bin/x86_64-linux/mtxrun +++ b/Master/bin/x86_64-linux/mtxrun @@ -10044,7 +10044,7 @@ local function splitpathexpr(str, newlist, validate) -- I couldn't resist lpeggi if validate then for s in gmatch(str,"[^,]+") do local restoreslashes = false - if gmatch(s, "//$") then restoreslashes = true end + if find(s, "//$") then restoreslashes = true end s = validate(s) if s then n = n + 1 ; t[n] = s @@ -12103,6 +12103,7 @@ local function collect_instance_files(filename,askedformat,allresults) -- todo : local path = pathlist[k] local pathname = lpegmatch(inhibitstripper,path) local doscan = path == pathname -- no ^!! + if not find (pathname, '//$') then doscan = false end done = false -- using file list if filelist then diff --git a/Master/bin/x86_64-solaris/mtxrun b/Master/bin/x86_64-solaris/mtxrun index 40c61ef000c..5fbc817e24a 100755 --- a/Master/bin/x86_64-solaris/mtxrun +++ b/Master/bin/x86_64-solaris/mtxrun @@ -10044,7 +10044,7 @@ local function splitpathexpr(str, newlist, validate) -- I couldn't resist lpeggi if validate then for s in gmatch(str,"[^,]+") do local restoreslashes = false - if gmatch(s, "//$") then restoreslashes = true end + if find(s, "//$") then restoreslashes = true end s = validate(s) if s then n = n + 1 ; t[n] = s @@ -12103,6 +12103,7 @@ local function collect_instance_files(filename,askedformat,allresults) -- todo : local path = pathlist[k] local pathname = lpegmatch(inhibitstripper,path) local doscan = path == pathname -- no ^!! + if not find (pathname, '//$') then doscan = false end done = false -- using file list if filelist then diff --git a/Master/texmf-dist/scripts/context/lua/mtxrun.lua b/Master/texmf-dist/scripts/context/lua/mtxrun.lua index 40c61ef000c..5fbc817e24a 100755 --- a/Master/texmf-dist/scripts/context/lua/mtxrun.lua +++ b/Master/texmf-dist/scripts/context/lua/mtxrun.lua @@ -10044,7 +10044,7 @@ local function splitpathexpr(str, newlist, validate) -- I couldn't resist lpeggi if validate then for s in gmatch(str,"[^,]+") do local restoreslashes = false - if gmatch(s, "//$") then restoreslashes = true end + if find(s, "//$") then restoreslashes = true end s = validate(s) if s then n = n + 1 ; t[n] = s @@ -12103,6 +12103,7 @@ local function collect_instance_files(filename,askedformat,allresults) -- todo : local path = pathlist[k] local pathname = lpegmatch(inhibitstripper,path) local doscan = path == pathname -- no ^!! + if not find (pathname, '//$') then doscan = false end done = false -- using file list if filelist then diff --git a/Master/texmf-dist/scripts/context/stubs/mswin/mtxrun.lua b/Master/texmf-dist/scripts/context/stubs/mswin/mtxrun.lua index 40c61ef000c..5fbc817e24a 100755 --- a/Master/texmf-dist/scripts/context/stubs/mswin/mtxrun.lua +++ b/Master/texmf-dist/scripts/context/stubs/mswin/mtxrun.lua @@ -10044,7 +10044,7 @@ local function splitpathexpr(str, newlist, validate) -- I couldn't resist lpeggi if validate then for s in gmatch(str,"[^,]+") do local restoreslashes = false - if gmatch(s, "//$") then restoreslashes = true end + if find(s, "//$") then restoreslashes = true end s = validate(s) if s then n = n + 1 ; t[n] = s @@ -12103,6 +12103,7 @@ local function collect_instance_files(filename,askedformat,allresults) -- todo : local path = pathlist[k] local pathname = lpegmatch(inhibitstripper,path) local doscan = path == pathname -- no ^!! + if not find (pathname, '//$') then doscan = false end done = false -- using file list if filelist then diff --git a/Master/texmf-dist/scripts/context/stubs/unix/mtxrun b/Master/texmf-dist/scripts/context/stubs/unix/mtxrun index 40c61ef000c..5fbc817e24a 100755 --- a/Master/texmf-dist/scripts/context/stubs/unix/mtxrun +++ b/Master/texmf-dist/scripts/context/stubs/unix/mtxrun @@ -10044,7 +10044,7 @@ local function splitpathexpr(str, newlist, validate) -- I couldn't resist lpeggi if validate then for s in gmatch(str,"[^,]+") do local restoreslashes = false - if gmatch(s, "//$") then restoreslashes = true end + if find(s, "//$") then restoreslashes = true end s = validate(s) if s then n = n + 1 ; t[n] = s @@ -12103,6 +12103,7 @@ local function collect_instance_files(filename,askedformat,allresults) -- todo : local path = pathlist[k] local pathname = lpegmatch(inhibitstripper,path) local doscan = path == pathname -- no ^!! + if not find (pathname, '//$') then doscan = false end done = false -- using file list if filelist then diff --git a/Master/texmf-dist/tex/context/base/data-exp.lua b/Master/texmf-dist/tex/context/base/data-exp.lua index a0a85d07f58..11e69bcae5d 100644 --- a/Master/texmf-dist/tex/context/base/data-exp.lua +++ b/Master/texmf-dist/tex/context/base/data-exp.lua @@ -96,7 +96,7 @@ local function splitpathexpr(str, newlist, validate) -- I couldn't resist lpeggi if validate then for s in gmatch(str,"[^,]+") do local restoreslashes = false - if gmatch(s, "//$") then restoreslashes = true end + if find(s, "//$") then restoreslashes = true end s = validate(s) if s then n = n + 1 ; t[n] = s diff --git a/Master/texmf-dist/tex/context/base/data-res.lua b/Master/texmf-dist/tex/context/base/data-res.lua index 33b1fe65274..cac283092c2 100644 --- a/Master/texmf-dist/tex/context/base/data-res.lua +++ b/Master/texmf-dist/tex/context/base/data-res.lua @@ -1019,6 +1019,7 @@ local function collect_instance_files(filename,askedformat,allresults) -- todo : local path = pathlist[k] local pathname = lpegmatch(inhibitstripper,path) local doscan = path == pathname -- no ^!! + if not find (pathname, '//$') then doscan = false end done = false -- using file list if filelist then |