masked Exception thrown: 'Ionic.Zip.BadReadException' in DotNetZip.dll
same problem is also with ionic.zip.dll 1.9.1.8
when zip file is incomplete in just the right way then row using (ZipFile zipFile = new ZipFile("file.zip)) writes Exception thrown: 'Ionic.Zip.BadReadException' in DotNetZip.dll into output - but thats it. everything continues as if nothing happened. zipFile.ExtractAll extracts all files which are complete and silently ignores that there was any problem
unfortunately it doesn't happen with every damaged zip file. one I have, i cannot send you, because of its content which doesn't belongh to me and is confidental. if i create another zip file and just removed some bytes from the end, then it is behaving correctly, Ionic.Zip.BadReadException was followed by two Ionic.Zip.ZipException and exception was thrown
my guess is that somewhere in the code Ionic.Zip.BadReadException in caught and not rethrown, it must be some very special case
my guess is ReadIntoInstance_Orig(ZipFile zf) which does // read the zipfile's central directory structure here. // workitem 9912 // But, because it may be corrupted, ignore errors. ... catch (ZipException) { } catch (IOException) { }
if it helps then for this file gnu unzip writes
End-of-central-directory signature not found. Either this file is not a zipfile, or it constitutes one disk of a multi-part archive. In the latter case the central directory and zipfile comment will be found on the last disk(s) of this archive.
Thanks for reporting this bug/problem, and sorry about the delay in getting back to you. This is a self-service repository, where I merge PRs and where the merging of PRs causes nugets to be pushed automatically (if you bump the version number in your PR). I'll leave this issue open until someone (or yourself) fixes it.