Timofey Solomko
59a0896fa5
Add tests for different 7z compression methods
2017-08-10 16:48:36 +03:00
Timofey Solomko
b8eb63b834
Minor code improvements.
2017-08-06 18:17:43 +03:00
Timofey Solomko
ece5bc5c99
Fix problems with reading entries' data caused by incorrect interpretation of packedStreams property of 7zFolder
2017-08-06 17:44:24 +03:00
Timofey Solomko
c341a9263c
Fix incorrect reading of substreams' crcs
2017-08-06 17:43:23 +03:00
Timofey Solomko
ffb1c78434
Fix incorrect read of end byte in 7z substream
2017-08-05 15:11:22 +03:00
Timofey Solomko
f76a7c677a
Add support for several 7z coders
2017-08-03 00:32:32 +03:00
Timofey Solomko
e79924bf84
Populate entryAttributes for 7z entry; set linkPath, too
2017-08-02 17:34:09 +03:00
Timofey Solomko
8ca5f9e37c
Use new attribute types in 7z entry info
2017-08-02 17:31:33 +03:00
Timofey Solomko
0bc1d470e9
Add some types for permissions/attributes
2017-07-31 18:55:56 +03:00
Timofey Solomko
42553d82bf
Fix problem with 7z containers with empty and non-empty files
...
unpackSizes array doesn't have values for empty files.
2017-07-31 17:49:44 +03:00
Timofey Solomko
f0c0c24d90
Return empty arrays for completely empty containers
2017-07-30 22:26:25 +03:00
Timofey Solomko
995ee29531
Parse 7zEntryInfo into 7zEntry.entryAttributes
2017-07-30 20:03:26 +03:00
Timofey Solomko
5831c5201d
Add encryptionNotSupported error for 7z
2017-07-30 18:36:07 +03:00
Timofey Solomko
e9774296a5
Use folder.unpack(data:) function for unpacking packed headers
2017-07-30 16:00:06 +03:00
Timofey Solomko
a7dfb66820
Fix problems with unpacking files
...
We now account for the fact that one stream contains information for several files.
2017-07-30 15:53:52 +03:00
Timofey Solomko
3503bcbb89
Support unavailable data in SevenZipEntry (when no substreamInfo is found)
2017-07-30 15:52:28 +03:00
Timofey Solomko
f0bdff081a
Extract function for unpacking data in 7z
2017-07-30 15:48:03 +03:00
Timofey Solomko
45e70d5f7a
Fix incorrect badge link in README
2017-07-29 23:38:03 +03:00
Timofey Solomko
c477194969
Don't return empty info array when no substreamInfo found
...
In this case we can still get some information about files and we should return it.
2017-07-29 23:28:33 +03:00
Timofey Solomko
0968395757
Implement SevenZipContainer.open function
...
There are some problems when one packed stream contains several files, though.
2017-07-29 23:28:33 +03:00
Timofey Solomko
b1bc89ecdd
Add update-crc version for crc32 function with Data argument
2017-07-29 23:28:33 +03:00
Timofey Solomko
559c47a42d
Fixes for packed header decoding
...
Don't use optional for storing packed header end index, use correct pointer data object for LZMA2 decoding.
2017-07-29 23:28:33 +03:00
Timofey Solomko
b3dcb761d9
Style improvements
2017-07-29 15:44:09 +03:00
Timofey Solomko
a222b05c71
Make winAttributes uint32
2017-07-29 15:35:05 +03:00
Timofey Solomko
8f9a0393f7
Remove unused 7zFileInfo.File properties
2017-07-29 15:34:46 +03:00
Timofey Solomko
363fe78ead
Add 7zEntry class and its first iteration
2017-07-29 00:02:17 +03:00
Timofey Solomko
8c558c5a77
Fix problems with isDirectory and times in 7zEntryInfo
2017-07-28 20:26:14 +03:00
Timofey Solomko
83c2a0d213
Add new EntryInfo struct for 7z and public function for getting them
2017-07-28 19:48:48 +03:00
Timofey Solomko
c98ed2a62e
Extract function to read "definedBits" as a BitReader extension
2017-07-28 19:19:23 +03:00
Timofey Solomko
3b31a51792
Use BitReader everywhere in 7z
...
It should protect from not updating index in DWP when we switch between DWP and BitReader.
2017-07-28 19:19:11 +03:00
Timofey Solomko
e0f84717de
Return only integer in multi-byte decode function for 7z
...
We never use its bytes for anything.
2017-07-28 19:03:14 +03:00
Timofey Solomko
415d6669d5
Throw error on detected additional streams
...
Because we don't support them (yet?)
2017-07-28 19:00:07 +03:00
Timofey Solomko
f4786d0cba
Parse files' properties
2017-07-28 18:59:30 +03:00
Timofey Solomko
b8ca1f5e29
Extract packed header processing code into initializer
2017-07-25 22:17:19 +03:00
Timofey Solomko
27ca50ecfb
Correctly unpack LZMA/LZMA2 packed headers
2017-07-25 22:03:33 +03:00
Timofey Solomko
c608d2b48f
Add ability to specify lzma properties for LZMADecoder externally
2017-07-25 22:02:56 +03:00
Timofey Solomko
af5b4402e9
Some small improvements to LZMADecoder code
2017-07-25 21:17:51 +03:00
Timofey Solomko
0287bd4443
Make 7zCoder equatable; add packed header processing
2017-07-25 21:17:36 +03:00
Timofey Solomko
133d2325fc
Another iteration of 7zip implementation
...
Extracted 7zProperty into a separate file; converted all structs to classes (to eliminates cows); replaced switches with ifs to ensure correct order of structures; overall completed implementation of structures (except fileinfo properties and packed header); codec renamed to coder.
2017-07-25 17:35:03 +03:00
Timofey Solomko
2f75d9b53b
Fix szMbd typo
2017-07-25 14:09:56 +03:00
Timofey Solomko
0b3d8523bd
Numerous changes to 7z code
...
Added correct verion of DWP.multiByteDecode for 7-zip; added detection of packed headers, as well as reading of their streaminfos; added SevenZipProperty struct which used as ArchiveProperties in header and as Properties in FilesInfo (for now, until parsing of these properties is added).
2017-07-25 13:58:25 +03:00
Timofey Solomko
adf55c3d64
Revert "Extract multiByteDecode for use in 7z"
...
This reverts commit e390e582b1 .
2017-07-25 13:42:20 +03:00
Timofey Solomko
097aaf7b24
Complete 7zip structures implementations
...
Though some questions, problems and opportunities for improvements are remaining.
2017-07-25 00:35:57 +03:00
Timofey Solomko
f76c2b575a
More 7z progress
2017-07-18 23:28:17 +03:00
Timofey Solomko
507db69ddb
Add a lot of 7z related files for structures
2017-07-18 21:06:37 +03:00
Timofey Solomko
e390e582b1
Extract multiByteDecode for use in 7z
2017-07-18 21:06:22 +03:00
Timofey Solomko
dbb876dec4
Add some structures and code for 7z
2017-07-18 20:25:42 +03:00
Timofey Solomko
b5c0032f38
First steps in 7z development
2017-07-18 18:50:27 +03:00
Timofey Solomko
5219240cb7
Prepare for 3.2.0
2017-07-16 11:07:58 +03:00
Timofey Solomko
ffe8be6d37
Set correct offset to the beginning of end of CD record
2017-07-16 10:59:49 +03:00