[latex3-commits] [git/LaTeX3-latex3-l3build] main: Fix issue when installing into directory with spaces (6cbb6c1)
Joseph Wright
joseph.wright at morningstar2.co.uk
Tue Apr 19 08:37:52 CEST 2022
Repository : https://github.com/latex3/l3build
On branch : main
Link : https://github.com/latex3/l3build/commit/6cbb6c104a95072cf44c348ceecd968aea23127b
>---------------------------------------------------------------
commit 6cbb6c104a95072cf44c348ceecd968aea23127b
Author: Marcel Fabian Krüger <tex at 2krueger.de>
Date: Tue Apr 19 04:08:03 2022 +0200
Fix issue when installing into directory with spaces
>---------------------------------------------------------------
6cbb6c104a95072cf44c348ceecd968aea23127b
l3build-file-functions.lua | 13 +++++++------
1 file changed, 7 insertions(+), 6 deletions(-)
diff --git a/l3build-file-functions.lua b/l3build-file-functions.lua
index ca39333..4c7764c 100644
--- a/l3build-file-functions.lua
+++ b/l3build-file-functions.lua
@@ -198,7 +198,7 @@ function escapepath(path)
else
path = gsub(path,"\\ ","[PATH-SPACE]")
path = gsub(path," ","\\ ")
- return gsub(path,"%[PATH-SPACE%]","\\ ")
+ return gsub(path,"%[PATH%-SPACE%]","\\ ")
end
end
@@ -234,13 +234,13 @@ function cp(glob, source, dest)
if os_type == "windows" then
if direxists(p.cwd) then
errorlevel = execute(
- 'xcopy /y /e /i "' .. unix_to_win(p.cwd) .. '" "'
- .. unix_to_win(dest .. '/' .. p.src) .. '" > nul'
+ 'xcopy /y /e /i "' .. unix_to_win(p.cwd) .. '" '
+ .. unix_to_win(dest .. '/' .. escapepath(p.src)) .. ' > nul'
) and 0 or 1
else
errorlevel = execute(
- 'xcopy /y "' .. unix_to_win(p.cwd) .. '" "'
- .. unix_to_win(dest .. '/') .. '" > nul'
+ 'xcopy /y "' .. unix_to_win(p.cwd) .. '" '
+ .. unix_to_win(dest .. '/') .. ' > nul'
) and 0 or 1
end
else
@@ -250,7 +250,7 @@ function cp(glob, source, dest)
if errorlevel ~=0 then return errorlevel end
end
errorlevel = execute(
- "cp -RLf '" .. p.cwd .. "' '" .. dest .. "'"
+ "cp -RLf '" .. p.cwd .. "' " .. dest
) and 0 or 1
end
if errorlevel ~=0 then
@@ -367,6 +367,7 @@ function remove_duplicates(a)
end
function mkdir(dir)
+ dir = escapepath(dir)
if os_type == "windows" then
-- Windows (with the extensions) will automatically make directory trees
-- but issues a warning if the dir already exists: avoid by including a test
More information about the latex3-commits
mailing list.