{
  "WorkItem": {
    "AffectedComponent": {
      "Name": "",
      "DisplayName": ""
    },
    "ClosedComment": "This is fixed in changeset 46393.  First binary v1.9.0.30 ",
    "ClosedDate": "2009-11-13T17:16:38.857-08:00",
    "CommentCount": 0,
    "Custom": null,
    "Description": "Hi and thank you for a nice lib!\n \nI use the extract function on a file from a application that I do not control. Depending on the content of the zip file I get an exception:\n \n{Ionic.Zip.ZipException: \\NAND_Flash\\DB2009\\projectIn\\sceneproject.icz could not be read ---> Ionic.Zip.BadReadException:   ZipFile::Read(): Bad signature (50776369) at position 0x0010021F\n \nWith some files the extraction is working fine, but it seems to depend of the images that is contained in a subfolder in the sceneproject file. When a extraction fails it does so everytime. I tried extrating the failing file with a similar desktop application but here it does not fail.\nI have attached the failing zip file.\n \nHope you are able to help, Thank you Thoeger",
    "LastUpdatedDate": "2013-05-16T05:31:59.187-07:00",
    "PlannedForRelease": "",
    "ReleaseVisibleToPublic": false,
    "Priority": {
      "Name": "Low",
      "Severity": 50,
      "Id": 1
    },
    "ProjectName": "DotNetZip",
    "ReportedDate": "2009-11-13T03:31:01.327-08:00",
    "Status": {
      "Name": "Closed",
      "Id": 4
    },
    "ReasonClosed": {
      "Name": "Unassigned"
    },
    "Summary": "BadReadException in Compact Framework",
    "Type": {
      "Name": "Issue",
      "Id": 3
    },
    "VoteCount": 1,
    "Id": 9181
  },
  "FileAttachments": [
    {
      "FileId": 2409,
      "FileName": "sceneproject.icz",
      "DownloadUrl": ".\\2409"
    }
  ],
  "Comments": [
    {
      "Message": "Hello Thoeger!\r\nThanks for the report. \r\n\r\nI've reproduced the problem here on my machine. It seems to be a defect in the FileStream.Read() method on the .NET CF.  At that point in the code, DotNetZip reads 4 bytes from the zipfile.  It is looking for a signature - a series of 4 bytes signifying the \"end of central directory\" in the zip.  When the library reads 4 bytes at a time, in the compact framework, on that file, it actually reads backwards in the file, and gets bad data (wrong signature).  Strange but true. The problem doesn't occur on the .NET (full) Framework.  If I modify the code to read 1 byte at a time, it reads the signature correctly on .NET CF.  I'm guessing it's a problem in caching in the FileStream.Read() method; maybe it happens only with files of a certain size on the .NET CF.    I've put the workaround into the code. \r\n\r\nIt's not the first time I found a defect on FileStream in the .NET CF.  \r\n\r\nI will be able to post a release later today (my time), after testing.\r\n",
      "PostedDate": "2009-11-13T06:38:53.643-08:00",
      "Id": -2147483648
    },
    {
      "Message": "The .NET CF bug is: \r\nhttps://connect.microsoft.com/VisualStudio/feedback/ViewFeedback.aspx?FeedbackID=318918",
      "PostedDate": "2009-11-13T06:52:14.417-08:00",
      "Id": -2147483648
    },
    {
      "Message": "",
      "PostedDate": "2009-11-13T17:16:38.857-08:00",
      "Id": -2147483648
    },
    {
      "Message": "Hi Cheeso,\r\nThank you very much - that did it!\r\n\r\nKind regards, Thoeger",
      "PostedDate": "2009-11-16T23:29:56.793-08:00",
      "Id": -2147483648
    },
    {
      "Message": "",
      "PostedDate": "2013-02-21T18:43:47.997-08:00",
      "Id": -2147483648
    },
    {
      "Message": "",
      "PostedDate": "2013-05-16T05:31:59.187-07:00",
      "Id": -2147483648
    }
  ]
}