summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/scripts/l3build/l3build-file-functions.lua
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/scripts/l3build/l3build-file-functions.lua')
-rw-r--r--Master/texmf-dist/scripts/l3build/l3build-file-functions.lua8
1 files changed, 7 insertions, 1 deletions
diff --git a/Master/texmf-dist/scripts/l3build/l3build-file-functions.lua b/Master/texmf-dist/scripts/l3build/l3build-file-functions.lua
index d6ec0cd5139..847a1d15e67 100644
--- a/Master/texmf-dist/scripts/l3build/l3build-file-functions.lua
+++ b/Master/texmf-dist/scripts/l3build/l3build-file-functions.lua
@@ -153,9 +153,15 @@ if os_type == "windows" then
os_yes = "for /l %I in (1,1,300) do @echo y"
end
+-- Deal with codepage hell on Windows
+local function fixname(f) return f end
+if chgstrcp then
+ fixname = chgstrcp.utf8tosyscp
+end
+
-- Deal with the fact that Windows and Unix use different path separators
local function unix_to_win(path)
- return gsub(path, "/", "\\")
+ return fixname(gsub(path, "/", "\\"))
end
function normalize_path(path)