WriteEntryToDirectory not working on Linux
The .zip file was created on Windows. I'm not sure if that matters or not.
In ExtractionMethods.WriteEntryToDirectory the second line makes a call to Path.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 like a\b.txt instead of creating the folder structure and putting the file in it.
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.
It was created using PowerShell's Compress-Archive module. 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?
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.