mirror of https://github.com/MidnightCommander/mc
Ticket #4559: extfs: u7z: bug with nested dirs in mkdir action.
The -w option sets the working directory for the temporary archive 7-zip builds when modifying an existing one. The option cant be used to set the base path inside an archive when adding something into it. When adding something to a 7z archive by its absolute path, 7zip only uses the last part of the path by default. E.g. `7z a 1.7z /tmp/a/b/date.txt` would add date.txt to the root dir inside the archive. If we wanted the file to be under `a/b/` inside the archive as well, it should be `7z a 1.7z /tmp/a`. Closes MidnightCommander/mc#202. Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
This commit is contained in:
parent
7e2cf63b4e
commit
db77fd5a0c
|
@ -86,7 +86,7 @@ mcu7zip_mkdir ()
|
||||||
{
|
{
|
||||||
dir=`mktemp -d "${MC_TMPDIR:-/tmp}/mctmpdir-u7z.XXXXXX"` || exit 1
|
dir=`mktemp -d "${MC_TMPDIR:-/tmp}/mctmpdir-u7z.XXXXXX"` || exit 1
|
||||||
mkdir -p "$dir"/"$2"
|
mkdir -p "$dir"/"$2"
|
||||||
$P7ZIP a -w"$dir" "$1" "$dir"/"$2" >/dev/null 2>&1
|
$P7ZIP a "$1" "$dir/${2%%/*}" >/dev/null 2>&1
|
||||||
rm -rf "$dir"
|
rm -rf "$dir"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue