When loading extra fields from both the central directory and local headers, unknown fields were not merged correctly. They were being appended, which means that we end up with the two versions stuck together - in some cases duplicating the field completely. This broke all kinds of things (like calculating the size of a local header) in subtle ways. This commit fixes this by implementing a new `Unknown` extra field type, and making sure that when reading local and central extra fields they are stored and preserved correctly. We cannot assume the unknown fields use the same data in the local and central headers. Fixes #505. |
||
---|---|---|
.. | ||
generic.rb | ||
ntfs.rb | ||
old_unix.rb | ||
universal_time.rb | ||
unix.rb | ||
unknown.rb | ||
zip64.rb | ||
zip64_placeholder.rb |