Bug 42274 - System.IO.Compression.ZipArchive vs System.Xml.XmlReader
Summary: System.IO.Compression.ZipArchive vs System.Xml.XmlReader
Alias: None
Product: Class Libraries
Classification: Mono
Component: General (show other bugs)
Version: master
Hardware: Macintosh Mac OS
: --- normal
Target Milestone: Untriaged
Assignee: João Matos
Depends on:
Reported: 2016-06-30 11:43 UTC by RichardW
Modified: 2016-06-30 13:23 UTC (History)
2 users (show)

See Also:
Is this bug a regression?: ---
Last known good build:


Description RichardW 2016-06-30 11:43:08 UTC
Related to 


As described at: https://github.com/OfficeDev/Open-XML-SDK/issues/64#issuecomment-228791344

If you have a zip file which contains a single xml file and try to process it with the following code using Mono 4.4.0 then the operation completes, but on the current Master you get a System.NotSupportedException from System.IO.Compression.DeflateStream.get_Length().

public static void Main(string[] args)
    var fileStream = new FileStream("monoTest.zip", FileMode.Open, FileAccess.ReadWrite, FileShare.ReadWrite);
    var zipArchive = new ZipArchive(fileStream, ZipArchiveMode.Update);

    var firstStream = zipArchive.Entries[0].Open();

    var xmlReader = System.Xml.XmlReader.Create(firstStream);

Which looks to be because XmlReader is trying to query the length on the stream you give it, which fails because it's a DeflateStream whose length can't be queried.

This test successfully loads the XML data on MS.NET/Windows.
Comment 1 João Matos 2016-06-30 13:23:43 UTC

Note You need to log in before you can comment on or make changes to this bug.