[
  {
    "Id": "610560",
    "ThreadId": "257123",
    "Html": "\r\n<p>Hi,</p>\r\n<p>In ZipEntry.Write.cs there appear to be some fixed length byte buffers that don't really take unicode into account. For example</p>\r\n<p>WriteHeader has this</p>\r\n<p>&nbsp;</p>\r\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; byte[] bytes = new byte[512];&nbsp; // large enough for looooong filenames (MAX_PATH == 260)</p>\r\n<p>&nbsp;</p>\r\n<p>and this</p>\r\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; byte[] FileNameBytes = _GetEncodedFileNameBytes();<br>\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Int16 filenameLength = (Int16)FileNameBytes.Length;</p>\r\n<p>When I pass in a unicode filename of say 148, I get back a byte buffer of 358.</p>\r\n<p>&nbsp;</p>\r\n<p>Is it ok to just change to code to allocate a buffer based on filenameLength ?</p>\r\n<p>&nbsp;</p>\r\n<p>Cheers,</p>\r\n<p>John</p>\r\n<p>&nbsp;</p>\r\n",
    "PostedDate": "2011-05-10T14:08:42.48-07:00",
    "UserRole": null,
    "MarkedAsAnswerDate": null
  },
  {
    "Id": "615399",
    "ThreadId": "257123",
    "Html": "<p>Hi John,</p>\r\n<p>Yes, what you are saying sounds reasonable to do.</p>\r\n<p>&nbsp;</p>",
    "PostedDate": "2011-05-19T11:34:36.403-07:00",
    "UserRole": null,
    "MarkedAsAnswerDate": null
  },
  {
    "Id": "615402",
    "ThreadId": "257123",
    "Html": "This discussion has been copied to a work item. Click <a href=\"http://dotnetzip.codeplex.com/workitem/13542\">here</a> to go to the work item and continue the discussion.",
    "PostedDate": "2011-05-19T11:35:34.48-07:00",
    "UserRole": null,
    "MarkedAsAnswerDate": null
  }
]