mirror of
https://github.com/adamhathcock/sharpcompress.git
synced 2026-02-08 13:34:57 +00:00
WriteEntryToDirectory not working on Linux #414
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @JoshClose on GitHub (Sep 2, 2020).
The .zip file was created on Windows. I'm not sure if that matters or not.
In
ExtractionMethods.WriteEntryToDirectorythe second line makes a call toPath.GetFileName(entry.Key). The key looks like"a\\b.txt". Since this is running on Linux the file name I get back is"a\\b.txt"instead of"b.txt". This is causing all the files to have names likea\b.txtinstead of creating the folder structure and putting the file in it.@JoshClose commented on GitHub (Sep 2, 2020):
Looks like zips created with 7zip and with Windows Send to Compressed (zipped) folder both create entries with keys using
/and not\. I'll figure out how this file was created.@JoshClose commented on GitHub (Sep 3, 2020):
It was created using PowerShell's
Compress-Archivemodule. A bug was submitted that was fixed and released in PowerShell 6.2.1 and 7.0.Would it be beneficial to try and handle invalid zip files like this?
@adamhathcock commented on GitHub (Sep 3, 2020):
I don't believe it is. Slashes mean directories in zip keys. If there's an extra one, that's not the fault of the decoder. The encoder shouldn't have it.