Commit Graph

423 Commits

Author SHA1 Message Date
shunf4
866e48d73a fix: compile error, using another way to pass down SoleFolderIndex 2024-05-13 15:14:01 +08:00
shunf4
e30d86c4d0 fix: missing soleFolderIndex arg in IFolder::CopyTo 2024-05-13 15:11:19 +08:00
shunf4
db2b75c28c fix: missing SoleFolderIndex field in CPP/7zip/UI/Common/ArchiveExtractCallback.h 2024-05-13 15:10:39 +08:00
shunf4
b42e86bdcf feat: do not set time for sole folder in extraction 2024-05-13 15:10:05 +08:00
Shun Zi
6b37ada7a3 Update README.md 2024-05-13 14:59:05 +08:00
Shun Zi
52fbd0336f Update README.md 2024-05-13 14:58:31 +08:00
shunf4
15489d7f53 fix: remove unused kPathHistory 2024-05-13 14:55:38 +08:00
shunf4
e648b8b8db when the archive has only one folder as its direct child, do not add filename to path by default on extraction; if not, add filename to path 2024-05-13 14:55:38 +08:00
shunf4
fe5a264595 setup ci 2024-05-13 14:55:38 +08:00
shunf4
476c3d5c9b make changes to about dialog 2024-05-13 14:55:37 +08:00
shunf4
0d250e1d01 apply James Hoo 's other original mod 2024-05-13 14:54:33 +08:00
shunf4
517e633fb7 make it build after mod 2024-05-13 14:52:43 +08:00
glachancecmaisonneuve
b34719746b easy 7-zip mod for 23.01: rebased from 19.00 2024-05-13 14:46:53 +08:00
Kornel Lesiński
6086b78b4f Github info 2024-05-13 14:40:08 +08:00
Tino Reichardt
79b2c78e9e Merge pull request #355 from sebres/fix-mem-leak-brotlimt
Fix memory leak in brotlimt
2023-10-10 18:12:02 +02:00
sebres
fa7e6314cb remove possible mem leak in error cases by brotli compression too 2023-09-27 15:10:39 +02:00
sebres
396505c7d7 remove mem leak in error cases, for example on error by write or if it was cut or by partial extraction (no return without free, done list may contain not processed entries, so library leaks);
+ small code deduplication
2023-09-27 15:06:54 +02:00
Tino Reichardt
ce27b4a0d3 Merge pull request #354 from sebres/zstd-like-zstdcli--sizehint-checksum
Make compression of zstd archive type more similar to zstdcli
2023-09-17 08:08:24 +02:00
sebres
1eca571ea2 .zst, .br: avoid setting of size hint for unknown size by -si, since unpackSize will be supplied as -1 (UINT64_MAX) 2023-09-14 20:02:40 +02:00
sebres
8a5e1c82db make compression of zstd archive type more similar to Zstandard CLI (store dictID and checksum by default in zstd type, no effect for 7z type) 2023-09-14 18:23:11 +02:00
sebres
5697b3dece zstd compression - set source size as hint if it is known e. g. by file compression (slightly better performance and/or compression ratio);
although the feature still calling as "experimental", but zstd uses this in its own client since v.1.4 IIRC and the only known drawback would be significant regress of compression ration if guess considerably underestimates, but it does no matter in case of known file size.
2023-09-14 18:23:10 +02:00
Tino Reichardt
62bfad55c3 Merge pull request #352 from sebres/patch-1
Amend for brotli (de)compress (-mmt1), update README.md
2023-09-11 17:03:56 +02:00
sebres
09a6777b96 amend to #351: fixes register of zip archive (after adding of brotli codec, zip type gets missing because exceeded kNumArcsMax in registering structure g_Arcs) 2023-09-11 15:40:47 +02:00
sebres
6411fade3c translate threads to decoder (previously ignored): important for -mmt>=2 to use brotli-mt (the streams are incompatible) 2023-09-07 20:29:36 +02:00
sebres
2b48366507 if single-threaded brotli, retain artificial number set in BrotliHandler (0) - always prefer it for .br format, otherwise -mmt1 causes that it'd use brotli-mt and the stream is incompatible; -mmt=n with n >= 2 forces multi-threaded compression/decompression (therefore incompatible with standard brotli) 2023-09-07 20:29:35 +02:00
Sergey G. Brester
32ac26a4e7 README.md - brotli (de)compress, new hash algorithms
amend to #330, #351
2023-09-07 12:32:44 +02:00
sebres
eeae03eaa1 Add options to brotli and implement clean brotli .br support
- allow to specify brotli window size
  - parameter -m0=brotli:long=n, BROTLI_MAX_WINDOW_BITS (24) used by default in brotli-mt, smaller == faster
  - note that :long can be set up to BROTLI_LARGE_MAX_WINDOW_BITS (30), whereas :wlog can be set up to BROTLI_MAX_WINDOW_BITS (24) only...
  - todo: check whether set of BROTLI_PARAM_LARGE_WINDOW to BROTLI_TRUE is needed if (lgwin > BROTLI_MAX_WINDOW_BITS)

- implementation of single-threaded brotli compression / decompression for .br data

Signed-off-by: Sergey G. Brester <info@sebres.de>
Reviewed-by: Tino Reichardt <milky-7zip@mcmilk.de>
2023-09-06 17:56:30 +02:00
sebres
9bb11a56b6 Fix -mmt= option for many handlers
The option is previously ignored by handlers used SetCoderProperties to
set number of threads.

Signed-off-by: Sergey G. Brester <serg.brester@sebres.de>
2023-09-06 17:56:09 +02:00
Tino Reichardt
8f52579e9e Update README 2023-06-18 15:11:43 +02:00
Tino Reichardt
dddf507557 Add SHA3 hashing
- added these variants: SHA3-256, SHA3-384, SHA3-512
- reordered also the hashing id's
- added some notes about them in DOC/Hashes.txt

Signed-off-by: Tino Reichardt <milky-7zip@mcmilk.de>
2023-06-18 15:09:58 +02:00
defrag257
9b8a493437 Add tzstd and tzst file extensions
Reviewed-by: Tino Reichardt <milky-7zip@mcmilk.de>
Signed-off-by: defrag257 <defrag257@qq.com>
2023-06-18 08:39:19 +02:00
defrag257
7d5bb9ed84 Add official Zstandard extension .zst
- update ZstdHandler.cpp to support also "zst" and "tzst" as
  valid extensions
- update README.md to reflect these chnages

Signed-off-by: Defrag257 <defrag257@qq.com>
Reviewed-by: Tino Reichardt <milky-7zip@mcmilk.de>
2023-05-28 19:26:08 +02:00
Jevil7452
92d1609b8a Add "ZS" to the file manager's name
This will allow for differentiation between standard 7-Zip and 7-Zip ZS
in the start menu.

Signed-off-by: Jevil7452 <98893064+Jevil7452@users.noreply.github.com>
Reviewed-by: Tino Reichardt <milky-7zip@mcmilk.de>
2023-05-28 07:39:24 +02:00
Tino Reichardt
888ea19c58 Fix small typo in "About" window
Closes: #314

Signed-off-by: Tino Reichardt <milky-7zip@mcmilk.de>
2023-04-14 21:18:10 +02:00
sebres
eef99c5416 GetQuotedString() uses correct windows cmdline notation
- escaping of backslash and quotes
- fixes gh-312 for new cmdline parser algorithm (gh-307, gh-310)

Signed-off-by: Sergey G. Brester <info@sebres.de>
Reviewed-by: Tino Reichardt <milky-7zip@mcmilk.de>
2023-04-14 21:18:03 +02:00
sebres
19e97e4c68 Code deduplication GetQuotedString()
Moved single function GetQuotedString() to MyString

Signed-off-by: Sergey G. Brester <info@sebres.de>
Reviewed-by: Tino Reichardt <milky-7zip@mcmilk.de>
2023-04-14 21:17:56 +02:00
sebres
8cfdd747c8 Fixes for "vulnerable command line parsing"
Signed-off-by: Sergey G. Brester <info@sebres.de>
Reviewed-by: Tino Reichardt <milky-7zip@mcmilk.de>
2023-04-14 21:17:50 +02:00
Tino Reichardt
d94284915a Revert the fixes for the "vulnerable command line parsing"
revert these commits:
- e615c8c63f
- 45c245645d.
- cc1192c7d9.
2023-04-05 19:12:15 +02:00
Tino Reichardt
aaf1f122b8 Update Zstandard to Version 1.5.5
Signed-off-by: Tino Reichardt <milky-7zip@mcmilk.de>
2023-04-05 08:10:40 +02:00
Sergey G. Brester
e615c8c63f CommandLineParser: amend to #307
compatibility to CommandLineToArgvW or stdlib's main argument parsing

Signed-off-by: Sergey G. Brester <serg.brester@sebres.de>
2023-03-30 18:00:15 +02:00
sebres
45c245645d few optimizations building string vector with arguments
- avoid unneeded copying (don't gather remaining string)
- don't build args byte by byte

Signed-off-by: Sergey G. Brester <serg.brester@sebres.de>
Reviewed-by: Tino Reichardt <milky-zfs@mcmilk.de>
2023-03-22 17:34:35 +01:00
sebres
cc1192c7d9 fixes vulnerable command line parsing
- considers valid windows escape sequences, like backslashes
  followed by quote-char as well as quote triples)
- SplitCommandLine works now very similar to CommandLineToArgvW
  (but doesn't require dependency to shell32)

Signed-off-by: Sergey G. Brester <serg.brester@sebres.de>
Reviewed-by: Tino Reichardt <milky-zfs@mcmilk.de>
2023-03-22 17:32:20 +01:00
Tino Reichardt
b2d7bd30d7 Update Lizard - use internal HUF and FSE entropy
- AdjustLiz.sh fixes some double defines with zstd of lizard
- lizard uses it's own entropy lib again
- this will fix #302

Signed-off-by: Tino Reichardt <milky-7zip@mcmilk.de>
2023-02-27 14:43:39 +01:00
Tino Reichardt
36c2a9c760 Fix missing context menu (issue #301)
Signed-off-by: Tino Reichardt <milky-7zip@mcmilk.de>
2023-02-21 22:36:28 +01:00
Tino Reichardt
4fae369d2d Fix selectable uppercase / lowercase hash formatting
- the last fix was not done correctly
- issue #177 is solved really now

Signed-off-by: Tino Reichardt <milky-7zip@mcmilk.de>
2023-02-18 20:03:54 +01:00
Tino Reichardt
f0954038bc Add Github Action for generating release binaries 2023-02-18 18:03:30 +01:00
sebres
8b011d230f reorder initialization in constructor matching to member declaration order (silence [-Werror=reorder]) 2023-02-15 15:35:00 +01:00
sebres
ebe8399e0f resolve deprecated ZSTD_resetDStream with its equivalent ZSTD_DCtx_reset(_ctx, ZSTD_reset_session_only); 2023-02-15 15:34:55 +01:00
Tino Reichardt
d56903e09d Add Github Build Action
Signed-off-by: Tino Reichardt <milky-7zip@mcmilk.de>
2023-02-13 23:13:27 +01:00
Tino Reichardt
650fba0328 Add history tracking and selectable hash formatting
Re-add clearing of various history tracking within registry
- see issue #113 for comments on this
- you can re-enable this via tools->options->settings

Re-add: selectable uppercase / lowercase hash formatting
- see issue #177 for more info about this

Signed-off-by: Tino Reichardt <milky-7zip@mcmilk.de>
2023-02-13 23:12:34 +01:00