react-native-update 10.34.3 → 10.34.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/harmony/pushy/src/main/cpp/HDiffPatch/CHANGELOG.md +34 -172
- package/harmony/pushy/src/main/cpp/HDiffPatch/LICENSE +4 -4
- package/harmony/pushy/src/main/cpp/HDiffPatch/Makefile +63 -379
- package/harmony/pushy/src/main/cpp/HDiffPatch/README.md +170 -415
- package/harmony/pushy/src/main/cpp/HDiffPatch/_atosize.h +10 -54
- package/harmony/pushy/src/main/cpp/HDiffPatch/_clock_for_demo.h +1 -13
- package/harmony/pushy/src/main/cpp/HDiffPatch/builds/android_ndk_jni_mk/Android.mk +18 -171
- package/harmony/pushy/src/main/cpp/HDiffPatch/builds/android_ndk_jni_mk/Application.mk +4 -5
- package/harmony/pushy/src/main/cpp/HDiffPatch/builds/android_ndk_jni_mk/hpatch.c +7 -38
- package/harmony/pushy/src/main/cpp/HDiffPatch/builds/android_ndk_jni_mk/hpatch.h +4 -15
- package/harmony/pushy/src/main/cpp/HDiffPatch/builds/android_ndk_jni_mk/hpatch_jni.c +12 -22
- package/harmony/pushy/src/main/cpp/HDiffPatch/builds/android_ndk_jni_mk/java/com/github/sisong/HPatch.java +4 -22
- package/harmony/pushy/src/main/cpp/HDiffPatch/builds/codeblocks/HDiffPatch.workspace +8 -0
- package/harmony/pushy/src/main/cpp/HDiffPatch/builds/codeblocks/HDiffZ.cbp +219 -0
- package/harmony/pushy/src/main/cpp/HDiffPatch/builds/codeblocks/HPatchZ.cbp +156 -0
- package/harmony/pushy/src/main/cpp/HDiffPatch/builds/codeblocks/unitTest.cbp +65 -0
- package/harmony/pushy/src/main/cpp/HDiffPatch/builds/vc/HDiffPatch.sln +105 -155
- package/harmony/pushy/src/main/cpp/HDiffPatch/builds/vc/HDiffZ.vcxproj +236 -363
- package/harmony/pushy/src/main/cpp/HDiffPatch/builds/vc/HDiffZ.vcxproj.user +3 -0
- package/harmony/pushy/src/main/cpp/HDiffPatch/builds/vc/HPatchZ.vcxproj +317 -347
- package/harmony/pushy/src/main/cpp/HDiffPatch/builds/vc/HPatchZ.vcxproj.user +3 -0
- package/harmony/pushy/src/main/cpp/HDiffPatch/builds/vc/unitTest.vcxproj +181 -295
- package/harmony/pushy/src/main/cpp/HDiffPatch/builds/vc/unitTest.vcxproj.user +3 -0
- package/harmony/pushy/src/main/cpp/HDiffPatch/builds/xcode/HDiffPatch.xcworkspace/contents.xcworkspacedata +0 -9
- package/harmony/pushy/src/main/cpp/HDiffPatch/builds/xcode/bestParams.xcodeproj/project.pbxproj +14 -53
- package/harmony/pushy/src/main/cpp/HDiffPatch/builds/xcode/hdiffz.xcodeproj/project.pbxproj +32 -162
- package/harmony/pushy/src/main/cpp/HDiffPatch/builds/xcode/hpatchz.xcodeproj/project.pbxproj +22 -89
- package/harmony/pushy/src/main/cpp/HDiffPatch/builds/xcode/lzma.xcodeproj/project.pbxproj +13 -237
- package/harmony/pushy/src/main/cpp/HDiffPatch/builds/xcode/testHashClash.xcodeproj/project.pbxproj +2 -2
- package/harmony/pushy/src/main/cpp/HDiffPatch/builds/xcode/unitTest.xcodeproj/project.pbxproj +14 -194
- package/harmony/pushy/src/main/cpp/HDiffPatch/builds/xcode/zstd.xcodeproj/project.pbxproj +10 -30
- package/harmony/pushy/src/main/cpp/HDiffPatch/checksum_plugin_demo.h +3 -458
- package/harmony/pushy/src/main/cpp/HDiffPatch/compress_parallel.cpp +71 -106
- package/harmony/pushy/src/main/cpp/HDiffPatch/compress_parallel.h +3 -3
- package/harmony/pushy/src/main/cpp/HDiffPatch/compress_plugin_demo.h +110 -484
- package/harmony/pushy/src/main/cpp/HDiffPatch/decompress_plugin_demo.h +193 -835
- package/harmony/pushy/src/main/cpp/HDiffPatch/dirDiffPatch/dir_diff/dir_diff.cpp +50 -99
- package/harmony/pushy/src/main/cpp/HDiffPatch/dirDiffPatch/dir_diff/dir_diff.h +4 -18
- package/harmony/pushy/src/main/cpp/HDiffPatch/dirDiffPatch/dir_diff/dir_diff_tools.cpp +8 -147
- package/harmony/pushy/src/main/cpp/HDiffPatch/dirDiffPatch/dir_diff/dir_diff_tools.h +6 -18
- package/harmony/pushy/src/main/cpp/HDiffPatch/dirDiffPatch/dir_diff/dir_manifest.cpp +25 -7
- package/harmony/pushy/src/main/cpp/HDiffPatch/dirDiffPatch/dir_diff/file_for_dirDiff.h +113 -5
- package/harmony/pushy/src/main/cpp/HDiffPatch/dirDiffPatch/dir_patch/dir_patch.c +97 -163
- package/harmony/pushy/src/main/cpp/HDiffPatch/dirDiffPatch/dir_patch/dir_patch.h +39 -49
- package/harmony/pushy/src/main/cpp/HDiffPatch/dirDiffPatch/dir_patch/dir_patch_tools.c +15 -15
- package/harmony/pushy/src/main/cpp/HDiffPatch/dirDiffPatch/dir_patch/dir_patch_tools.h +2 -18
- package/harmony/pushy/src/main/cpp/HDiffPatch/dirDiffPatch/dir_patch/dir_patch_types.h +4 -8
- package/harmony/pushy/src/main/cpp/HDiffPatch/dirDiffPatch/dir_patch/new_dir_output.c +57 -72
- package/harmony/pushy/src/main/cpp/HDiffPatch/dirDiffPatch/dir_patch/new_dir_output.h +13 -18
- package/harmony/pushy/src/main/cpp/HDiffPatch/dirDiffPatch/dir_patch/new_stream.c +1 -1
- package/harmony/pushy/src/main/cpp/HDiffPatch/dirDiffPatch/dir_patch/new_stream.h +2 -2
- package/harmony/pushy/src/main/cpp/HDiffPatch/dirDiffPatch/dir_patch/ref_stream.c +2 -2
- package/harmony/pushy/src/main/cpp/HDiffPatch/dirDiffPatch/dir_patch/ref_stream.h +2 -2
- package/harmony/pushy/src/main/cpp/HDiffPatch/dirDiffPatch/dir_patch/res_handle_limit.c +2 -2
- package/harmony/pushy/src/main/cpp/HDiffPatch/dirDiffPatch/dir_patch/res_handle_limit.h +1 -1
- package/harmony/pushy/src/main/cpp/HDiffPatch/file_for_patch.c +100 -311
- package/harmony/pushy/src/main/cpp/HDiffPatch/file_for_patch.h +72 -53
- package/harmony/pushy/src/main/cpp/HDiffPatch/hdiffz.cpp +487 -888
- package/harmony/pushy/src/main/cpp/HDiffPatch/hpatch_dir_listener.h +28 -45
- package/harmony/pushy/src/main/cpp/HDiffPatch/hpatchz.c +247 -812
- package/harmony/pushy/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/diff.cpp +544 -1265
- package/harmony/pushy/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/diff.h +38 -123
- package/harmony/pushy/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/diff_types.h +0 -115
- package/harmony/pushy/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/bytes_rle.cpp +102 -272
- package/harmony/pushy/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/bytes_rle.h +12 -22
- package/harmony/pushy/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/compress_detect.cpp +4 -18
- package/harmony/pushy/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/compress_detect.h +5 -7
- package/harmony/pushy/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/libdivsufsort/{divsufsort.cpp → divsufsort.c} +8 -5
- package/harmony/pushy/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/libdivsufsort/divsufsort.c.inc.h +164 -91
- package/harmony/pushy/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/libdivsufsort/divsufsort.h +102 -5
- package/harmony/pushy/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/libdivsufsort/divsufsort64.c +13 -0
- package/harmony/pushy/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/libdivsufsort/divsufsort64.h +97 -1
- package/harmony/pushy/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/libdivsufsort/divsufsort_private.h +44 -23
- package/harmony/pushy/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/libdivsufsort/sssort.c.inc.h +89 -54
- package/harmony/pushy/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/libdivsufsort/trsort.c.inc.h +55 -48
- package/harmony/pushy/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/libdivsufsort/utils.c.inc.h +381 -0
- package/harmony/pushy/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/limit_mem_diff/adler_roll.c +47 -110
- package/harmony/pushy/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/limit_mem_diff/adler_roll.h +4 -11
- package/harmony/pushy/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/limit_mem_diff/bloom_filter.h +26 -53
- package/harmony/pushy/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/limit_mem_diff/covers.h +25 -103
- package/harmony/pushy/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/limit_mem_diff/digest_matcher.cpp +130 -271
- package/harmony/pushy/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/limit_mem_diff/digest_matcher.h +7 -17
- package/harmony/pushy/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/limit_mem_diff/stream_serialize.cpp +37 -628
- package/harmony/pushy/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/limit_mem_diff/stream_serialize.h +43 -203
- package/harmony/pushy/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/mem_buf.h +10 -14
- package/harmony/pushy/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/pack_uint.h +7 -22
- package/harmony/pushy/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/suffix_string.cpp +46 -132
- package/harmony/pushy/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/suffix_string.h +9 -48
- package/harmony/pushy/src/main/cpp/HDiffPatch/libHDiffPatch/HPatch/patch.c +299 -650
- package/harmony/pushy/src/main/cpp/HDiffPatch/libHDiffPatch/HPatch/patch.h +82 -120
- package/harmony/pushy/src/main/cpp/HDiffPatch/libHDiffPatch/HPatch/patch_private.h +7 -87
- package/harmony/pushy/src/main/cpp/HDiffPatch/libHDiffPatch/HPatch/patch_types.h +9 -119
- package/harmony/pushy/src/main/cpp/HDiffPatch/libParallel/parallel_channel.cpp +6 -2
- package/harmony/pushy/src/main/cpp/HDiffPatch/libParallel/parallel_channel.h +15 -192
- package/harmony/pushy/src/main/cpp/HDiffPatch/libParallel/parallel_import.cpp +367 -0
- package/harmony/pushy/src/main/cpp/HDiffPatch/libParallel/parallel_import.h +56 -31
- package/harmony/pushy/src/main/cpp/HDiffPatch/test/_private_searchBestParams.cpp +1 -1
- package/harmony/pushy/src/main/cpp/HDiffPatch/test/hpatchz_test.cpp +1 -0
- package/harmony/pushy/src/main/cpp/HDiffPatch/test/testHashClash.cpp +31 -225
- package/harmony/pushy/src/main/cpp/HDiffPatch/test/unit_test.cpp +94 -566
- package/harmony/pushy/src/main/cpp/lzma/Asm/x86/7zAsm.asm +28 -222
- package/harmony/pushy/src/main/cpp/lzma/Asm/x86/7zCrcOpt.asm +117 -228
- package/harmony/pushy/src/main/cpp/lzma/Asm/x86/AesOpt.asm +173 -678
- package/harmony/pushy/src/main/cpp/lzma/Asm/x86/LzmaDecOpt.asm +22 -103
- package/harmony/pushy/src/main/cpp/lzma/Asm/x86/XzCrc64Opt.asm +167 -485
- package/harmony/pushy/src/main/cpp/lzma/C/7z.h +6 -8
- package/harmony/pushy/src/main/cpp/lzma/C/7zAlloc.c +30 -39
- package/harmony/pushy/src/main/cpp/lzma/C/7zAlloc.h +3 -3
- package/harmony/pushy/src/main/cpp/lzma/C/7zArcIn.c +217 -232
- package/harmony/pushy/src/main/cpp/lzma/C/7zBuf.h +3 -3
- package/harmony/pushy/src/main/cpp/lzma/C/7zCrc.c +68 -404
- package/harmony/pushy/src/main/cpp/lzma/C/7zCrc.h +6 -9
- package/harmony/pushy/src/main/cpp/lzma/C/7zCrcOpt.c +79 -163
- package/harmony/pushy/src/main/cpp/lzma/C/7zDec.c +78 -160
- package/harmony/pushy/src/main/cpp/lzma/C/7zFile.c +58 -215
- package/harmony/pushy/src/main/cpp/lzma/C/7zFile.h +6 -15
- package/harmony/pushy/src/main/cpp/lzma/C/7zStream.c +23 -46
- package/harmony/pushy/src/main/cpp/lzma/C/7zTypes.h +89 -311
- package/harmony/pushy/src/main/cpp/lzma/C/7zVersion.h +5 -5
- package/harmony/pushy/src/main/cpp/lzma/C/Aes.c +68 -191
- package/harmony/pushy/src/main/cpp/lzma/C/Aes.h +8 -30
- package/harmony/pushy/src/main/cpp/lzma/C/AesOpt.c +108 -926
- package/harmony/pushy/src/main/cpp/lzma/C/Alloc.c +96 -246
- package/harmony/pushy/src/main/cpp/lzma/C/Alloc.h +8 -33
- package/harmony/pushy/src/main/cpp/lzma/C/Bcj2.c +144 -177
- package/harmony/pushy/src/main/cpp/lzma/C/Bcj2.h +42 -228
- package/harmony/pushy/src/main/cpp/lzma/C/Bcj2Enc.c +182 -377
- package/harmony/pushy/src/main/cpp/lzma/C/Bra.c +143 -622
- package/harmony/pushy/src/main/cpp/lzma/C/Bra.h +40 -81
- package/harmony/pushy/src/main/cpp/lzma/C/Bra86.c +58 -163
- package/harmony/pushy/src/main/cpp/lzma/C/BraIA64.c +48 -9
- package/harmony/pushy/src/main/cpp/lzma/C/Compiler.h +15 -228
- package/harmony/pushy/src/main/cpp/lzma/C/CpuArch.c +133 -885
- package/harmony/pushy/src/main/cpp/lzma/C/CpuArch.h +78 -428
- package/harmony/pushy/src/main/cpp/lzma/C/Delta.c +31 -136
- package/harmony/pushy/src/main/cpp/lzma/C/Delta.h +3 -3
- package/harmony/pushy/src/main/cpp/lzma/C/DllSecur.c +62 -53
- package/harmony/pushy/src/main/cpp/lzma/C/DllSecur.h +5 -5
- package/harmony/pushy/src/main/cpp/lzma/C/LzFind.c +495 -1114
- package/harmony/pushy/src/main/cpp/lzma/C/LzFind.h +25 -64
- package/harmony/pushy/src/main/cpp/lzma/C/LzFindMt.c +400 -969
- package/harmony/pushy/src/main/cpp/lzma/C/LzFindMt.h +24 -37
- package/harmony/pushy/src/main/cpp/lzma/C/LzHash.h +48 -25
- package/harmony/pushy/src/main/cpp/lzma/C/Lzma2Dec.c +7 -12
- package/harmony/pushy/src/main/cpp/lzma/C/Lzma2Dec.h +7 -8
- package/harmony/pushy/src/main/cpp/lzma/C/Lzma2DecMt.c +83 -96
- package/harmony/pushy/src/main/cpp/lzma/C/Lzma2DecMt.h +9 -11
- package/harmony/pushy/src/main/cpp/lzma/C/Lzma2Enc.c +92 -96
- package/harmony/pushy/src/main/cpp/lzma/C/Lzma2Enc.h +9 -12
- package/harmony/pushy/src/main/cpp/lzma/C/Lzma86.h +3 -3
- package/harmony/pushy/src/main/cpp/lzma/C/Lzma86Dec.c +4 -3
- package/harmony/pushy/src/main/cpp/lzma/C/Lzma86Enc.c +6 -3
- package/harmony/pushy/src/main/cpp/lzma/C/LzmaDec.c +206 -384
- package/harmony/pushy/src/main/cpp/lzma/C/LzmaDec.h +8 -11
- package/harmony/pushy/src/main/cpp/lzma/C/LzmaEnc.c +315 -489
- package/harmony/pushy/src/main/cpp/lzma/C/LzmaEnc.h +9 -18
- package/harmony/pushy/src/main/cpp/lzma/C/LzmaLib.c +3 -5
- package/harmony/pushy/src/main/cpp/lzma/C/LzmaLib.h +14 -21
- package/harmony/pushy/src/main/cpp/lzma/C/MtCoder.c +87 -90
- package/harmony/pushy/src/main/cpp/lzma/C/MtCoder.h +25 -28
- package/harmony/pushy/src/main/cpp/lzma/C/MtDec.c +88 -74
- package/harmony/pushy/src/main/cpp/lzma/C/MtDec.h +20 -21
- package/harmony/pushy/src/main/cpp/lzma/C/Ppmd.h +34 -118
- package/harmony/pushy/src/main/cpp/lzma/C/Ppmd7.c +293 -712
- package/harmony/pushy/src/main/cpp/lzma/C/Ppmd7.h +70 -109
- package/harmony/pushy/src/main/cpp/lzma/C/Ppmd7Dec.c +116 -237
- package/harmony/pushy/src/main/cpp/lzma/C/Ppmd7Enc.c +95 -245
- package/harmony/pushy/src/main/cpp/lzma/C/Precomp.h +5 -122
- package/harmony/pushy/src/main/cpp/lzma/C/RotateDefs.h +4 -24
- package/harmony/pushy/src/main/cpp/lzma/C/Sha256.c +143 -387
- package/harmony/pushy/src/main/cpp/lzma/C/Sha256.h +7 -67
- package/harmony/pushy/src/main/cpp/lzma/C/Sort.c +114 -241
- package/harmony/pushy/src/main/cpp/lzma/C/Sort.h +7 -4
- package/harmony/pushy/src/main/cpp/lzma/C/Threads.c +14 -731
- package/harmony/pushy/src/main/cpp/lzma/C/Threads.h +14 -204
- package/harmony/pushy/src/main/cpp/lzma/C/ThreadsP.c +396 -0
- package/harmony/pushy/src/main/cpp/lzma/C/ThreadsP.h +31 -0
- package/harmony/pushy/src/main/cpp/lzma/C/Util/7z/7z.dsp +2 -10
- package/harmony/pushy/src/main/cpp/lzma/C/Util/7z/7zMain.c +79 -282
- package/harmony/pushy/src/main/cpp/lzma/C/Util/7z/Precomp.h +7 -10
- package/harmony/pushy/src/main/cpp/lzma/C/Util/7z/makefile +3 -7
- package/harmony/pushy/src/main/cpp/lzma/C/Util/7z/makefile.gcc +75 -32
- package/harmony/pushy/src/main/cpp/lzma/C/Util/Lzma/LzmaUtil.c +56 -111
- package/harmony/pushy/src/main/cpp/lzma/C/Util/Lzma/LzmaUtil.dsp +0 -24
- package/harmony/pushy/src/main/cpp/lzma/C/Util/Lzma/makefile +0 -2
- package/harmony/pushy/src/main/cpp/lzma/C/Util/Lzma/makefile.gcc +41 -18
- package/harmony/pushy/src/main/cpp/lzma/C/Util/LzmaLib/LzmaLib.dsp +2 -30
- package/harmony/pushy/src/main/cpp/lzma/C/Util/LzmaLib/LzmaLibExports.c +6 -7
- package/harmony/pushy/src/main/cpp/lzma/C/Util/LzmaLib/makefile +2 -27
- package/harmony/pushy/src/main/cpp/lzma/C/Util/SfxSetup/Precomp.h +7 -10
- package/harmony/pushy/src/main/cpp/lzma/C/Util/SfxSetup/SfxSetup.c +22 -39
- package/harmony/pushy/src/main/cpp/lzma/C/Util/SfxSetup/makefile +2 -9
- package/harmony/pushy/src/main/cpp/lzma/C/Util/SfxSetup/makefile_con +1 -3
- package/harmony/pushy/src/main/cpp/lzma/C/Xz.c +3 -5
- package/harmony/pushy/src/main/cpp/lzma/C/Xz.h +47 -129
- package/harmony/pushy/src/main/cpp/lzma/C/XzCrc64.c +43 -97
- package/harmony/pushy/src/main/cpp/lzma/C/XzCrc64.h +8 -8
- package/harmony/pushy/src/main/cpp/lzma/C/XzCrc64Opt.c +36 -228
- package/harmony/pushy/src/main/cpp/lzma/C/XzDec.c +295 -405
- package/harmony/pushy/src/main/cpp/lzma/C/XzEnc.c +139 -194
- package/harmony/pushy/src/main/cpp/lzma/C/XzEnc.h +11 -15
- package/harmony/pushy/src/main/cpp/lzma/C/XzIn.c +134 -200
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/7zip.mak +6 -6
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Aes.mak +1 -4
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zCompressionMode.h +13 -29
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zDecode.cpp +90 -120
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zDecode.h +6 -9
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zEncode.cpp +140 -183
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zEncode.h +20 -23
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zExtract.cpp +57 -78
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zFolderInStream.cpp +44 -169
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zFolderInStream.h +17 -57
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zHandler.cpp +109 -141
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zHandler.h +57 -54
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zHandlerOut.cpp +116 -336
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zHeader.cpp +1 -1
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zHeader.h +9 -17
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zIn.cpp +136 -234
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zIn.h +26 -35
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zItem.h +5 -10
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zOut.cpp +155 -280
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zOut.h +40 -51
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zProperties.cpp +59 -67
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zProperties.h +2 -6
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zRegister.cpp +2 -8
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zSpecStream.cpp +3 -12
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zSpecStream.h +9 -23
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zUpdate.cpp +387 -975
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/7z/7zUpdate.h +16 -44
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/7z/StdAfx.h +2 -5
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/Archive.def +0 -2
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/Archive2.def +0 -2
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/ArchiveExports.cpp +8 -15
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/Common/CoderMixer2.cpp +87 -106
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/Common/CoderMixer2.h +57 -57
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/Common/DummyOutStream.cpp +1 -1
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/Common/DummyOutStream.h +8 -6
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/Common/HandlerOut.cpp +43 -126
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/Common/HandlerOut.h +18 -77
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/Common/InStreamWithCRC.cpp +9 -20
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/Common/InStreamWithCRC.h +23 -20
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/Common/ItemNameUtils.cpp +9 -61
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/Common/ItemNameUtils.h +3 -8
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/Common/MultiStream.cpp +27 -29
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/Common/MultiStream.h +26 -23
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/Common/OutStreamWithCRC.cpp +2 -2
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/Common/OutStreamWithCRC.h +8 -6
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/Common/ParseProperties.h +2 -2
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/Common/StdAfx.h +2 -5
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/DllExports2.cpp +10 -63
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/IArchive.h +173 -319
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/LzmaHandler.cpp +113 -92
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/SplitHandler.cpp +53 -47
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/StdAfx.h +2 -5
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/XzHandler.cpp +208 -352
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Archive/XzHandler.h +2 -2
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Asm.mak +3 -6
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Bundles/Alone7z/Alone.dsp +47 -227
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Bundles/Alone7z/StdAfx.h +2 -5
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Bundles/Alone7z/makefile +5 -19
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Bundles/Format7zExtractR/StdAfx.h +2 -5
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Bundles/Format7zExtractR/makefile +2 -4
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Bundles/Format7zR/StdAfx.h +2 -5
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Bundles/Format7zR/makefile +1 -6
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Bundles/LzmaCon/LzmaAlone.cpp +53 -71
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Bundles/LzmaCon/LzmaCon.dsp +22 -85
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Bundles/LzmaCon/StdAfx.h +2 -5
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Bundles/LzmaCon/makefile +4 -13
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Bundles/LzmaCon/makefile.gcc +166 -102
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Bundles/SFXCon/SFXCon.dsp +4 -109
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Bundles/SFXCon/SfxCon.cpp +30 -69
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Bundles/SFXCon/StdAfx.h +2 -5
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Bundles/SFXCon/makefile +7 -10
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Bundles/SFXCon/resource.rc +1 -5
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Bundles/SFXSetup/ExtractCallbackSfx.cpp +16 -16
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Bundles/SFXSetup/ExtractCallbackSfx.h +12 -9
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Bundles/SFXSetup/ExtractEngine.cpp +9 -7
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Bundles/SFXSetup/ExtractEngine.h +2 -2
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Bundles/SFXSetup/SFXSetup.dsp +5 -74
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Bundles/SFXSetup/SfxSetup.cpp +51 -58
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Bundles/SFXSetup/StdAfx.h +10 -3
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Bundles/SFXSetup/makefile +5 -9
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Bundles/SFXWin/SFXWin.dsp +6 -92
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Bundles/SFXWin/SfxWin.cpp +19 -46
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Bundles/SFXWin/StdAfx.h +11 -3
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Bundles/SFXWin/makefile +5 -11
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Bundles/SFXWin/resource.rc +0 -5
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Common/CWrappers.cpp +28 -136
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Common/CWrappers.h +5 -67
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Common/CreateCoder.cpp +62 -74
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Common/CreateCoder.h +24 -32
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Common/FilePathAutoRename.cpp +7 -7
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Common/FilePathAutoRename.h +2 -2
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Common/FileStreams.cpp +100 -548
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Common/FileStreams.h +86 -125
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Common/FilterCoder.cpp +116 -258
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Common/FilterCoder.h +76 -72
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Common/InBuffer.cpp +15 -34
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Common/InBuffer.h +9 -38
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Common/InOutTempBuffer.cpp +82 -192
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Common/InOutTempBuffer.h +28 -25
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Common/LimitedStreams.cpp +52 -78
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Common/LimitedStreams.h +83 -52
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Common/LockedStream.h +2 -2
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Common/MethodId.h +2 -2
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Common/MethodProps.cpp +67 -323
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Common/MethodProps.h +38 -123
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Common/OffsetStream.cpp +8 -6
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Common/OffsetStream.h +13 -9
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Common/OutBuffer.cpp +12 -12
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Common/OutBuffer.h +7 -74
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Common/ProgressUtils.cpp +5 -5
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Common/ProgressUtils.h +13 -11
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Common/PropId.cpp +1 -10
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Common/RegisterArc.h +14 -16
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Common/RegisterCodec.h +16 -16
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Common/StdAfx.h +2 -5
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Common/StreamBinder.cpp +50 -45
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Common/StreamBinder.h +21 -39
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Common/StreamObjects.cpp +42 -47
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Common/StreamObjects.h +53 -42
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Common/StreamUtils.cpp +4 -49
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Common/StreamUtils.h +2 -20
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Common/UniqBlocks.cpp +4 -4
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Common/UniqBlocks.h +5 -20
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Common/VirtThread.cpp +9 -8
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Common/VirtThread.h +5 -5
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Compress/Bcj2Coder.cpp +355 -556
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Compress/Bcj2Coder.h +59 -66
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Compress/Bcj2Register.cpp +2 -2
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Compress/BcjCoder.cpp +6 -6
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Compress/BcjCoder.h +13 -19
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Compress/BcjRegister.cpp +2 -2
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Compress/BranchMisc.cpp +5 -88
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Compress/BranchMisc.h +18 -42
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Compress/BranchRegister.cpp +16 -33
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Compress/ByteSwap.cpp +53 -52
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Compress/CodecExports.cpp +30 -64
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Compress/CopyCoder.cpp +22 -55
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Compress/CopyCoder.h +26 -11
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Compress/DeltaFilter.cpp +28 -26
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Compress/Lzma2Decoder.cpp +28 -30
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Compress/Lzma2Decoder.h +54 -45
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Compress/Lzma2Encoder.cpp +12 -24
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Compress/Lzma2Encoder.h +22 -10
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Compress/Lzma2Register.cpp +1 -1
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Compress/LzmaDecoder.cpp +26 -33
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Compress/LzmaDecoder.h +51 -51
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Compress/LzmaEncoder.cpp +40 -232
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Compress/LzmaEncoder.h +14 -13
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Compress/LzmaRegister.cpp +1 -1
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Compress/PpmdDecoder.cpp +35 -84
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Compress/PpmdDecoder.h +41 -42
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Compress/PpmdEncoder.cpp +25 -66
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Compress/PpmdEncoder.h +17 -8
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Compress/PpmdRegister.cpp +1 -1
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Compress/StdAfx.h +2 -5
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Compress/XzDecoder.cpp +12 -13
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Compress/XzDecoder.h +32 -26
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Compress/XzEncoder.cpp +16 -14
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Compress/XzEncoder.h +20 -9
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Crc.mak +1 -1
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Crc64.mak +1 -1
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Crypto/7zAes.cpp +32 -67
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Crypto/7zAes.h +18 -30
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Crypto/7zAesRegister.cpp +3 -3
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Crypto/MyAes.cpp +43 -208
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Crypto/MyAes.h +25 -90
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Crypto/MyAesReg.cpp +4 -17
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Crypto/RandGen.cpp +21 -29
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Crypto/RandGen.h +3 -4
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Crypto/StdAfx.h +2 -5
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/GuiCommon.rc +3 -38
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Guid.txt +3 -26
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/ICoder.h +172 -253
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/IDecl.h +7 -55
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/IPassword.h +12 -43
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/IProgress.h +9 -10
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/IStream.h +50 -133
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/LzmaDec.mak +2 -4
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/MyVersionInfo.rc +1 -1
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/PropID.h +2 -53
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Client7z/Client7z.cpp +177 -329
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Client7z/Client7z.dsp +1 -97
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Client7z/StdAfx.h +2 -5
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Client7z/makefile +1 -2
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Common/ArchiveCommandLine.cpp +183 -687
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Common/ArchiveCommandLine.h +15 -49
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Common/ArchiveExtractCallback.cpp +913 -2275
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Common/ArchiveExtractCallback.h +115 -353
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Common/ArchiveName.cpp +106 -127
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Common/ArchiveName.h +3 -9
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Common/ArchiveOpenCallback.cpp +35 -272
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Common/ArchiveOpenCallback.h +64 -134
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Common/Bench.cpp +1200 -2608
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Common/Bench.h +20 -64
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Common/DefaultName.cpp +1 -1
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Common/DefaultName.h +2 -2
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Common/DirItem.h +36 -253
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Common/EnumDirItems.cpp +233 -774
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Common/EnumDirItems.h +6 -2
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Common/ExitCode.h +2 -2
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Common/Extract.cpp +63 -156
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Common/Extract.h +10 -23
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Common/ExtractMode.h +2 -12
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Common/ExtractingFilePath.cpp +6 -22
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Common/ExtractingFilePath.h +4 -4
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Common/HashCalc.cpp +65 -1991
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Common/HashCalc.h +29 -241
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Common/IFileExtractCallback.h +47 -45
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Common/LoadCodecs.cpp +179 -442
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Common/LoadCodecs.h +89 -147
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Common/OpenArchive.cpp +380 -529
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Common/OpenArchive.h +42 -75
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Common/PropIDUtils.cpp +86 -163
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Common/PropIDUtils.h +5 -5
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Common/Property.h +2 -2
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Common/SetProperties.cpp +15 -23
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Common/SetProperties.h +2 -2
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Common/SortUtils.h +2 -2
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Common/StdAfx.h +2 -5
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Common/TempFiles.cpp +1 -2
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Common/TempFiles.h +2 -5
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Common/Update.cpp +368 -595
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Common/Update.h +47 -68
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Common/UpdateAction.h +2 -2
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Common/UpdateCallback.cpp +146 -444
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Common/UpdateCallback.h +68 -103
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Common/UpdatePair.cpp +42 -111
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Common/UpdatePair.h +2 -2
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Common/UpdateProduce.cpp +3 -7
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Common/UpdateProduce.h +6 -11
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Common/WorkDir.cpp +35 -25
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Common/WorkDir.h +4 -8
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Common/ZipRegistry.h +9 -91
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Console/BenchCon.cpp +4 -4
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Console/BenchCon.h +2 -2
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Console/Console.mak +1 -4
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Console/Console.manifest +0 -3
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Console/ConsoleClose.cpp +19 -48
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Console/ConsoleClose.h +12 -18
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Console/ExtractCallbackConsole.cpp +41 -162
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Console/ExtractCallbackConsole.h +41 -88
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Console/HashCon.cpp +81 -140
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Console/HashCon.h +17 -27
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Console/List.cpp +124 -182
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Console/List.h +7 -22
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Console/Main.cpp +109 -590
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Console/MainAr.cpp +2 -62
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Console/OpenCallbackConsole.cpp +3 -3
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Console/OpenCallbackConsole.h +10 -17
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Console/PercentPrinter.cpp +10 -13
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Console/PercentPrinter.h +9 -13
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Console/StdAfx.h +2 -5
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Console/UpdateCallbackConsole.cpp +24 -320
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Console/UpdateCallbackConsole.h +26 -50
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Console/UserInputUtils.cpp +5 -13
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Console/UserInputUtils.h +2 -2
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Console/makefile +2 -6
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Explorer/MyMessages.cpp +6 -12
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Explorer/MyMessages.h +4 -4
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/FileManager/BrowseDialog.cpp +195 -302
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/FileManager/BrowseDialog.h +4 -15
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/FileManager/ComboDialog.cpp +2 -2
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/FileManager/ComboDialog.h +6 -6
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/FileManager/DialogSize.h +2 -2
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/FileManager/ExtractCallback.cpp +181 -416
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/FileManager/ExtractCallback.h +197 -216
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/FileManager/FormatUtils.h +2 -2
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/FileManager/LangUtils.h +5 -13
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/FileManager/MyWindowsNew.h +5 -48
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/FileManager/OverwriteDialog.cpp +49 -215
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/FileManager/OverwriteDialog.h +30 -50
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/FileManager/OverwriteDialog.rc +1 -3
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/FileManager/OverwriteDialogRes.h +3 -5
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/FileManager/PasswordDialog.cpp +5 -5
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/FileManager/PasswordDialog.h +6 -6
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/FileManager/PasswordDialog.rc +0 -4
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/FileManager/ProgressDialog.cpp +10 -15
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/FileManager/ProgressDialog.h +17 -18
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/FileManager/ProgressDialog2.cpp +130 -276
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/FileManager/ProgressDialog2.h +52 -56
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/FileManager/ProgressDialog2Res.h +1 -2
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/FileManager/ProgressDialog2a.rc +3 -8
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/FileManager/PropertyName.h +2 -2
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/FileManager/PropertyNameRes.h +0 -9
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/FileManager/SysIconUtils.cpp +89 -185
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/FileManager/SysIconUtils.h +20 -23
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/FileManager/resource.h +1 -23
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/FileManager/resourceGui.h +0 -10
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/GUI/Extract.rc +4 -4
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/GUI/ExtractDialog.cpp +33 -36
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/GUI/ExtractDialog.h +15 -15
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/GUI/ExtractGUI.cpp +22 -39
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/GUI/ExtractGUI.h +3 -4
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/GUI/HashGUI.h +2 -2
- package/harmony/pushy/src/main/cpp/lzma/CPP/Build.mak +13 -109
- package/harmony/pushy/src/main/cpp/lzma/CPP/Common/AutoPtr.h +14 -25
- package/harmony/pushy/src/main/cpp/lzma/CPP/Common/CRC.cpp +1 -1
- package/harmony/pushy/src/main/cpp/lzma/CPP/Common/C_FileIO.cpp +90 -1
- package/harmony/pushy/src/main/cpp/lzma/CPP/Common/C_FileIO.h +49 -2
- package/harmony/pushy/src/main/cpp/lzma/CPP/Common/ComTry.h +2 -2
- package/harmony/pushy/src/main/cpp/lzma/CPP/Common/CommandLineParser.cpp +7 -41
- package/harmony/pushy/src/main/cpp/lzma/CPP/Common/CommandLineParser.h +3 -3
- package/harmony/pushy/src/main/cpp/lzma/CPP/Common/Common.h +29 -14
- package/harmony/pushy/src/main/cpp/lzma/CPP/Common/CrcReg.cpp +45 -24
- package/harmony/pushy/src/main/cpp/lzma/CPP/Common/Defs.h +2 -3
- package/harmony/pushy/src/main/cpp/lzma/CPP/Common/DynamicBuffer.h +5 -17
- package/harmony/pushy/src/main/cpp/lzma/CPP/Common/IntToString.cpp +110 -132
- package/harmony/pushy/src/main/cpp/lzma/CPP/Common/IntToString.h +9 -35
- package/harmony/pushy/src/main/cpp/lzma/CPP/Common/Lang.h +5 -12
- package/harmony/pushy/src/main/cpp/lzma/CPP/Common/ListFileUtils.cpp +31 -49
- package/harmony/pushy/src/main/cpp/lzma/CPP/Common/ListFileUtils.h +4 -4
- package/harmony/pushy/src/main/cpp/lzma/CPP/Common/MyBuffer.h +21 -59
- package/harmony/pushy/src/main/cpp/lzma/CPP/Common/MyBuffer2.h +10 -95
- package/harmony/pushy/src/main/cpp/lzma/CPP/Common/MyCom.h +81 -497
- package/harmony/pushy/src/main/cpp/lzma/CPP/Common/MyException.h +2 -2
- package/harmony/pushy/src/main/cpp/lzma/CPP/Common/MyGuidDef.h +9 -18
- package/harmony/pushy/src/main/cpp/lzma/CPP/Common/MyInitGuid.h +5 -17
- package/harmony/pushy/src/main/cpp/lzma/CPP/Common/MyLinux.h +2 -35
- package/harmony/pushy/src/main/cpp/lzma/CPP/Common/MyString.cpp +164 -347
- package/harmony/pushy/src/main/cpp/lzma/CPP/Common/MyString.h +35 -246
- package/harmony/pushy/src/main/cpp/lzma/CPP/Common/MyTypes.h +8 -11
- package/harmony/pushy/src/main/cpp/lzma/CPP/Common/MyUnknown.h +11 -2
- package/harmony/pushy/src/main/cpp/lzma/CPP/Common/MyVector.h +94 -184
- package/harmony/pushy/src/main/cpp/lzma/CPP/Common/MyWindows.cpp +11 -158
- package/harmony/pushy/src/main/cpp/lzma/CPP/Common/MyWindows.h +54 -148
- package/harmony/pushy/src/main/cpp/lzma/CPP/Common/NewHandler.cpp +27 -204
- package/harmony/pushy/src/main/cpp/lzma/CPP/Common/NewHandler.h +5 -38
- package/harmony/pushy/src/main/cpp/lzma/CPP/Common/Sha256Reg.cpp +16 -43
- package/harmony/pushy/src/main/cpp/lzma/CPP/Common/StdAfx.h +2 -2
- package/harmony/pushy/src/main/cpp/lzma/CPP/Common/StdInStream.cpp +11 -20
- package/harmony/pushy/src/main/cpp/lzma/CPP/Common/StdInStream.h +5 -13
- package/harmony/pushy/src/main/cpp/lzma/CPP/Common/StdOutStream.cpp +39 -124
- package/harmony/pushy/src/main/cpp/lzma/CPP/Common/StdOutStream.h +11 -27
- package/harmony/pushy/src/main/cpp/lzma/CPP/Common/StringConvert.cpp +15 -458
- package/harmony/pushy/src/main/cpp/lzma/CPP/Common/StringConvert.h +2 -24
- package/harmony/pushy/src/main/cpp/lzma/CPP/Common/StringToInt.cpp +89 -99
- package/harmony/pushy/src/main/cpp/lzma/CPP/Common/StringToInt.h +2 -19
- package/harmony/pushy/src/main/cpp/lzma/CPP/Common/TextConfig.cpp +11 -10
- package/harmony/pushy/src/main/cpp/lzma/CPP/Common/TextConfig.h +2 -2
- package/harmony/pushy/src/main/cpp/lzma/CPP/Common/UTFConvert.cpp +102 -677
- package/harmony/pushy/src/main/cpp/lzma/CPP/Common/UTFConvert.h +5 -377
- package/harmony/pushy/src/main/cpp/lzma/CPP/Common/Wildcard.cpp +84 -197
- package/harmony/pushy/src/main/cpp/lzma/CPP/Common/Wildcard.h +25 -107
- package/harmony/pushy/src/main/cpp/lzma/CPP/Common/XzCrc64Reg.cpp +14 -11
- package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/COM.h +8 -24
- package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/CommonDialog.cpp +113 -197
- package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/CommonDialog.h +12 -32
- package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/Control/ComboBox.cpp +4 -4
- package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/Control/ComboBox.h +10 -22
- package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/Control/CommandBar.h +6 -6
- package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/Control/Dialog.cpp +47 -242
- package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/Control/Dialog.h +51 -94
- package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/Control/Edit.h +2 -2
- package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/Control/ImageList.h +4 -4
- package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/Control/ListView.cpp +26 -33
- package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/Control/ListView.h +22 -32
- package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/Control/ProgressBar.h +13 -13
- package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/Control/PropertyPage.cpp +34 -56
- package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/Control/PropertyPage.h +9 -9
- package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/Control/ReBar.h +3 -3
- package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/Control/Static.h +2 -2
- package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/Control/StatusBar.h +5 -5
- package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/Control/StdAfx.h +2 -5
- package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/Control/ToolBar.h +3 -3
- package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/Control/Trackbar.h +2 -2
- package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/Control/Window2.cpp +6 -8
- package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/Control/Window2.h +7 -9
- package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/DLL.cpp +8 -77
- package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/DLL.h +10 -55
- package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/Defs.h +4 -4
- package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/ErrorMsg.cpp +2 -69
- package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/ErrorMsg.h +2 -3
- package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/FileDir.cpp +80 -728
- package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/FileDir.h +7 -62
- package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/FileFind.cpp +56 -756
- package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/FileFind.h +19 -205
- package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/FileIO.cpp +47 -569
- package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/FileIO.h +28 -283
- package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/FileLink.cpp +112 -369
- package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/FileMapping.h +3 -3
- package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/FileName.cpp +113 -185
- package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/FileName.h +14 -41
- package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/FileSystem.cpp +10 -66
- package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/FileSystem.h +2 -6
- package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/Handle.h +4 -6
- package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/MemoryLock.cpp +14 -29
- package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/MemoryLock.h +2 -2
- package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/NtCheck.h +2 -14
- package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/PropVariant.cpp +56 -102
- package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/PropVariant.h +9 -68
- package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/PropVariantConv.cpp +14 -150
- package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/PropVariantConv.h +3 -13
- package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/Registry.cpp +128 -212
- package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/Registry.h +20 -32
- package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/ResourceString.cpp +4 -4
- package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/ResourceString.h +2 -3
- package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/SecurityUtils.cpp +18 -23
- package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/SecurityUtils.h +56 -39
- package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/Shell.cpp +58 -539
- package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/Shell.h +14 -49
- package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/StdAfx.h +2 -5
- package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/Synchronization.cpp +0 -77
- package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/Synchronization.h +18 -240
- package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/System.cpp +38 -317
- package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/System.h +5 -154
- package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/Thread.h +10 -18
- package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/TimeUtils.cpp +37 -291
- package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/TimeUtils.h +10 -124
- package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/Window.cpp +7 -7
- package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/Window.h +19 -98
- package/harmony/pushy/src/main/cpp/lzma/CS/7zip/Compress/LzmaAlone/LzmaAlone.csproj +90 -0
- package/harmony/pushy/src/main/cpp/lzma/DOC/Methods.txt +2 -6
- package/harmony/pushy/src/main/cpp/lzma/DOC/lzma-history.txt +0 -205
- package/harmony/pushy/src/main/cpp/lzma/DOC/lzma-sdk.txt +13 -93
- package/harmony/pushy/src/main/cpp/lzma/DOC/lzma.txt +13 -30
- package/harmony/pushy/src/main/cpp/lzma/bin/7zS2.sfx +0 -0
- package/harmony/pushy/src/main/cpp/lzma/bin/7zS2con.sfx +0 -0
- package/harmony/pushy/src/main/cpp/lzma/bin/7zSD.sfx +0 -0
- package/harmony/pushy/src/main/cpp/lzma/bin/7zdec.exe +0 -0
- package/harmony/pushy/src/main/cpp/lzma/bin/7zr.exe +0 -0
- package/harmony/pushy/src/main/cpp/lzma/bin/lzma.exe +0 -0
- package/harmony/pushy/src/main/cpp/lzma/bin/x64/7zr.exe +0 -0
- package/package.json +1 -1
- package/react-native-update.podspec +0 -1
- package/react-native.config.js +1 -0
- package/src/client.ts +1 -2
- package/src/type.ts +1 -0
- package/harmony/pushy/src/main/cpp/HDiffPatch/README_cn.md +0 -547
- package/harmony/pushy/src/main/cpp/HDiffPatch/_hextobytes.h +0 -112
- package/harmony/pushy/src/main/cpp/HDiffPatch/bsdiff_wrapper/bsdiff_wrapper.cpp +0 -389
- package/harmony/pushy/src/main/cpp/HDiffPatch/bsdiff_wrapper/bsdiff_wrapper.h +0 -73
- package/harmony/pushy/src/main/cpp/HDiffPatch/bsdiff_wrapper/bspatch_wrapper.c +0 -266
- package/harmony/pushy/src/main/cpp/HDiffPatch/bsdiff_wrapper/bspatch_wrapper.h +0 -58
- package/harmony/pushy/src/main/cpp/HDiffPatch/builds/android_ndk_jni_mk/build_libs_patchers.bat +0 -1
- package/harmony/pushy/src/main/cpp/HDiffPatch/builds/android_ndk_jni_mk/build_libs_patchers.sh +0 -1
- package/harmony/pushy/src/main/cpp/HDiffPatch/builds/vc/bzip2.vcxproj +0 -228
- package/harmony/pushy/src/main/cpp/HDiffPatch/builds/vc/hpatchz_test.vcxproj +0 -215
- package/harmony/pushy/src/main/cpp/HDiffPatch/builds/vc/libdeflate.vcxproj +0 -256
- package/harmony/pushy/src/main/cpp/HDiffPatch/builds/vc/longPathAware.exe.manifest +0 -7
- package/harmony/pushy/src/main/cpp/HDiffPatch/builds/vc/lzma.vcxproj +0 -271
- package/harmony/pushy/src/main/cpp/HDiffPatch/builds/vc/testHashClash.vcxproj +0 -228
- package/harmony/pushy/src/main/cpp/HDiffPatch/builds/vc/zlib.vcxproj +0 -242
- package/harmony/pushy/src/main/cpp/HDiffPatch/builds/vc/zstd.vcxproj +0 -287
- package/harmony/pushy/src/main/cpp/HDiffPatch/builds/xcode/HDiffPatch.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings +0 -8
- package/harmony/pushy/src/main/cpp/HDiffPatch/builds/xcode/libdeflate.xcodeproj/project.pbxproj +0 -286
- package/harmony/pushy/src/main/cpp/HDiffPatch/builds/xcode/zlib.xcodeproj/project.pbxproj +0 -308
- package/harmony/pushy/src/main/cpp/HDiffPatch/builds/xcode_iOS_hpatchz/hpatch_objc/hpatch_objc.h +0 -33
- package/harmony/pushy/src/main/cpp/HDiffPatch/builds/xcode_iOS_hpatchz/hpatch_objc/hpatch_objc.m +0 -33
- package/harmony/pushy/src/main/cpp/HDiffPatch/builds/xcode_iOS_hpatchz/hpatchz.xcodeproj/project.pbxproj +0 -774
- package/harmony/pushy/src/main/cpp/HDiffPatch/hdiffz_import_patch.c +0 -31
- package/harmony/pushy/src/main/cpp/HDiffPatch/hdiffz_import_patch.h +0 -42
- package/harmony/pushy/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/diff_for_hpatch_lite.h +0 -74
- package/harmony/pushy/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/match_block.cpp +0 -478
- package/harmony/pushy/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/match_block.h +0 -222
- package/harmony/pushy/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/libdivsufsort/divsufsort64.cpp +0 -14
- package/harmony/pushy/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/match_inplace.cpp +0 -168
- package/harmony/pushy/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/match_inplace.h +0 -44
- package/harmony/pushy/src/main/cpp/HDiffPatch/libHDiffPatch/HDiff/private_diff/qsort_parallel.h +0 -125
- package/harmony/pushy/src/main/cpp/HDiffPatch/libHDiffPatch/HPatch/hpatch_mt/_hcache_old_mt.c +0 -243
- package/harmony/pushy/src/main/cpp/HDiffPatch/libHDiffPatch/HPatch/hpatch_mt/_hcache_old_mt.h +0 -51
- package/harmony/pushy/src/main/cpp/HDiffPatch/libHDiffPatch/HPatch/hpatch_mt/_hinput_mt.c +0 -153
- package/harmony/pushy/src/main/cpp/HDiffPatch/libHDiffPatch/HPatch/hpatch_mt/_hinput_mt.h +0 -54
- package/harmony/pushy/src/main/cpp/HDiffPatch/libHDiffPatch/HPatch/hpatch_mt/_houtput_mt.c +0 -158
- package/harmony/pushy/src/main/cpp/HDiffPatch/libHDiffPatch/HPatch/hpatch_mt/_houtput_mt.h +0 -49
- package/harmony/pushy/src/main/cpp/HDiffPatch/libHDiffPatch/HPatch/hpatch_mt/_hpatch_mt.c +0 -294
- package/harmony/pushy/src/main/cpp/HDiffPatch/libHDiffPatch/HPatch/hpatch_mt/_hpatch_mt.h +0 -59
- package/harmony/pushy/src/main/cpp/HDiffPatch/libHDiffPatch/HPatch/hpatch_mt/_patch_private_mt.h +0 -217
- package/harmony/pushy/src/main/cpp/HDiffPatch/libHDiffPatch/HPatch/hpatch_mt/hpatch_mt.c +0 -349
- package/harmony/pushy/src/main/cpp/HDiffPatch/libHDiffPatch/HPatch/hpatch_mt/hpatch_mt.h +0 -110
- package/harmony/pushy/src/main/cpp/HDiffPatch/libHDiffPatch/HPatchLite/hpatch_lite.c +0 -366
- package/harmony/pushy/src/main/cpp/HDiffPatch/libHDiffPatch/HPatchLite/hpatch_lite.h +0 -91
- package/harmony/pushy/src/main/cpp/HDiffPatch/libHDiffPatch/HPatchLite/hpatch_lite_input_cache.h +0 -31
- package/harmony/pushy/src/main/cpp/HDiffPatch/libHDiffPatch/HPatchLite/hpatch_lite_types.h +0 -106
- package/harmony/pushy/src/main/cpp/HDiffPatch/libParallel/parallel_import_c.c +0 -497
- package/harmony/pushy/src/main/cpp/HDiffPatch/libParallel/parallel_import_c.h +0 -106
- package/harmony/pushy/src/main/cpp/HDiffPatch/libhsync/sign_diff/_match_in_old_sign.cpp +0 -254
- package/harmony/pushy/src/main/cpp/HDiffPatch/libhsync/sign_diff/_match_in_old_sign.h +0 -39
- package/harmony/pushy/src/main/cpp/HDiffPatch/libhsync/sign_diff/_sign_diff_type.h +0 -37
- package/harmony/pushy/src/main/cpp/HDiffPatch/libhsync/sign_diff/sign_diff.cpp +0 -62
- package/harmony/pushy/src/main/cpp/HDiffPatch/libhsync/sign_diff/sign_diff.h +0 -44
- package/harmony/pushy/src/main/cpp/HDiffPatch/libhsync/sync_client/dict_decompress_plugin.h +0 -156
- package/harmony/pushy/src/main/cpp/HDiffPatch/libhsync/sync_client/dir_sync_client.cpp +0 -440
- package/harmony/pushy/src/main/cpp/HDiffPatch/libhsync/sync_client/dir_sync_client.h +0 -88
- package/harmony/pushy/src/main/cpp/HDiffPatch/libhsync/sync_client/match_in_old.cpp +0 -332
- package/harmony/pushy/src/main/cpp/HDiffPatch/libhsync/sync_client/match_in_old.h +0 -48
- package/harmony/pushy/src/main/cpp/HDiffPatch/libhsync/sync_client/match_in_types.h +0 -198
- package/harmony/pushy/src/main/cpp/HDiffPatch/libhsync/sync_client/sync_client.cpp +0 -697
- package/harmony/pushy/src/main/cpp/HDiffPatch/libhsync/sync_client/sync_client.h +0 -74
- package/harmony/pushy/src/main/cpp/HDiffPatch/libhsync/sync_client/sync_client_private.h +0 -262
- package/harmony/pushy/src/main/cpp/HDiffPatch/libhsync/sync_client/sync_client_type.h +0 -174
- package/harmony/pushy/src/main/cpp/HDiffPatch/libhsync/sync_client/sync_client_type_private.h +0 -174
- package/harmony/pushy/src/main/cpp/HDiffPatch/libhsync/sync_client/sync_diff_data.cpp +0 -252
- package/harmony/pushy/src/main/cpp/HDiffPatch/libhsync/sync_client/sync_diff_data.h +0 -67
- package/harmony/pushy/src/main/cpp/HDiffPatch/libhsync/sync_client/sync_info_client.cpp +0 -680
- package/harmony/pushy/src/main/cpp/HDiffPatch/libhsync/sync_client/sync_info_client.h +0 -137
- package/harmony/pushy/src/main/cpp/HDiffPatch/libhsync/sync_make/dict_compress_plugin.h +0 -83
- package/harmony/pushy/src/main/cpp/HDiffPatch/libhsync/sync_make/dir_sync_make.cpp +0 -125
- package/harmony/pushy/src/main/cpp/HDiffPatch/libhsync/sync_make/dir_sync_make.h +0 -56
- package/harmony/pushy/src/main/cpp/HDiffPatch/libhsync/sync_make/hsynz_plugin.h +0 -55
- package/harmony/pushy/src/main/cpp/HDiffPatch/libhsync/sync_make/match_in_new.cpp +0 -147
- package/harmony/pushy/src/main/cpp/HDiffPatch/libhsync/sync_make/match_in_new.h +0 -38
- package/harmony/pushy/src/main/cpp/HDiffPatch/libhsync/sync_make/sync_info_make.cpp +0 -354
- package/harmony/pushy/src/main/cpp/HDiffPatch/libhsync/sync_make/sync_info_make.h +0 -76
- package/harmony/pushy/src/main/cpp/HDiffPatch/libhsync/sync_make/sync_make.cpp +0 -521
- package/harmony/pushy/src/main/cpp/HDiffPatch/libhsync/sync_make/sync_make.h +0 -69
- package/harmony/pushy/src/main/cpp/HDiffPatch/libhsync/sync_make/sync_make_hash_clash.h +0 -122
- package/harmony/pushy/src/main/cpp/HDiffPatch/libhsync/sync_make/sync_make_private.h +0 -66
- package/harmony/pushy/src/main/cpp/HDiffPatch/libhsync/zsync_client_wrapper/zsync_client_type.h +0 -36
- package/harmony/pushy/src/main/cpp/HDiffPatch/libhsync/zsync_client_wrapper/zsync_client_type_private.h +0 -81
- package/harmony/pushy/src/main/cpp/HDiffPatch/libhsync/zsync_client_wrapper/zsync_client_wrapper.cpp +0 -247
- package/harmony/pushy/src/main/cpp/HDiffPatch/libhsync/zsync_client_wrapper/zsync_client_wrapper.h +0 -71
- package/harmony/pushy/src/main/cpp/HDiffPatch/libhsync/zsync_client_wrapper/zsync_info_client.cpp +0 -351
- package/harmony/pushy/src/main/cpp/HDiffPatch/libhsync/zsync_client_wrapper/zsync_info_client.h +0 -42
- package/harmony/pushy/src/main/cpp/HDiffPatch/libhsync/zsync_client_wrapper/zsync_match_in_old.cpp +0 -124
- package/harmony/pushy/src/main/cpp/HDiffPatch/libhsync/zsync_client_wrapper/zsync_match_in_old.h +0 -38
- package/harmony/pushy/src/main/cpp/HDiffPatch/libhsync/zsync_make_wrapper/zsync_info_make.cpp +0 -203
- package/harmony/pushy/src/main/cpp/HDiffPatch/libhsync/zsync_make_wrapper/zsync_info_make.h +0 -55
- package/harmony/pushy/src/main/cpp/HDiffPatch/libhsync/zsync_make_wrapper/zsync_make_wrapper.cpp +0 -79
- package/harmony/pushy/src/main/cpp/HDiffPatch/libhsync/zsync_make_wrapper/zsync_make_wrapper.h +0 -66
- package/harmony/pushy/src/main/cpp/HDiffPatch/vcdiff_wrapper/vcdiff_wrapper.cpp +0 -628
- package/harmony/pushy/src/main/cpp/HDiffPatch/vcdiff_wrapper/vcdiff_wrapper.h +0 -95
- package/harmony/pushy/src/main/cpp/HDiffPatch/vcdiff_wrapper/vcpatch_code_table.h +0 -78
- package/harmony/pushy/src/main/cpp/HDiffPatch/vcdiff_wrapper/vcpatch_wrapper.c +0 -950
- package/harmony/pushy/src/main/cpp/HDiffPatch/vcdiff_wrapper/vcpatch_wrapper.h +0 -72
- package/harmony/pushy/src/main/cpp/lzma/Asm/arm64/7zAsm.S +0 -181
- package/harmony/pushy/src/main/cpp/lzma/Asm/arm64/LzmaDecOpt.S +0 -1487
- package/harmony/pushy/src/main/cpp/lzma/Asm/x86/LzFindOpt.asm +0 -540
- package/harmony/pushy/src/main/cpp/lzma/Asm/x86/Sha256Opt.asm +0 -275
- package/harmony/pushy/src/main/cpp/lzma/Asm/x86/Sort.asm +0 -860
- package/harmony/pushy/src/main/cpp/lzma/C/7zWindows.h +0 -101
- package/harmony/pushy/src/main/cpp/lzma/C/7zip_gcc_c.mak +0 -360
- package/harmony/pushy/src/main/cpp/lzma/C/Asm_c.mak +0 -12
- package/harmony/pushy/src/main/cpp/lzma/C/LzFindOpt.c +0 -578
- package/harmony/pushy/src/main/cpp/lzma/C/Sha256Opt.c +0 -451
- package/harmony/pushy/src/main/cpp/lzma/C/SwapBytes.c +0 -835
- package/harmony/pushy/src/main/cpp/lzma/C/SwapBytes.h +0 -17
- package/harmony/pushy/src/main/cpp/lzma/C/Util/Lzma/Precomp.h +0 -13
- package/harmony/pushy/src/main/cpp/lzma/C/Util/LzmaLib/Precomp.c +0 -4
- package/harmony/pushy/src/main/cpp/lzma/C/Util/LzmaLib/Precomp.h +0 -13
- package/harmony/pushy/src/main/cpp/lzma/C/var_clang.mak +0 -11
- package/harmony/pushy/src/main/cpp/lzma/C/var_clang_arm64.mak +0 -12
- package/harmony/pushy/src/main/cpp/lzma/C/var_clang_x64.mak +0 -11
- package/harmony/pushy/src/main/cpp/lzma/C/var_clang_x86.mak +0 -11
- package/harmony/pushy/src/main/cpp/lzma/C/var_gcc.mak +0 -12
- package/harmony/pushy/src/main/cpp/lzma/C/var_gcc_arm64.mak +0 -12
- package/harmony/pushy/src/main/cpp/lzma/C/var_gcc_x64.mak +0 -10
- package/harmony/pushy/src/main/cpp/lzma/C/var_gcc_x86.mak +0 -10
- package/harmony/pushy/src/main/cpp/lzma/C/var_mac_arm64.mak +0 -11
- package/harmony/pushy/src/main/cpp/lzma/C/var_mac_x64.mak +0 -11
- package/harmony/pushy/src/main/cpp/lzma/C/warn_clang.mak +0 -1
- package/harmony/pushy/src/main/cpp/lzma/C/warn_clang_mac.mak +0 -1
- package/harmony/pushy/src/main/cpp/lzma/C/warn_gcc.mak +0 -51
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/7zip_gcc.mak +0 -1370
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Bundles/Alone7z/makefile.gcc +0 -279
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Bundles/SFXCon/makefile.gcc +0 -215
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Common/MultiOutStream.cpp +0 -855
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Common/MultiOutStream.h +0 -160
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/LzFindOpt.mak +0 -7
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/LzmaDec_gcc.mak +0 -14
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Sha256.mak +0 -13
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/Sort.mak +0 -6
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Client7z/makefile.gcc +0 -72
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/Console/makefile.gcc +0 -187
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/FileManager/MemDialog.cpp +0 -218
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/FileManager/MemDialog.h +0 -48
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/FileManager/MemDialogRes.h +0 -13
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/FileManager/StdAfx.h +0 -67
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/UI/GUI/7zG.exe.manifest +0 -23
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/cmpl_clang.mak +0 -3
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/cmpl_clang_arm64.mak +0 -3
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/cmpl_clang_x64.mak +0 -3
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/cmpl_clang_x86.mak +0 -3
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/cmpl_gcc.mak +0 -3
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/cmpl_gcc_arm64.mak +0 -3
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/cmpl_gcc_x64.mak +0 -3
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/cmpl_gcc_x86.mak +0 -3
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/cmpl_mac_arm64.mak +0 -3
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/cmpl_mac_x64.mak +0 -3
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/var_clang.mak +0 -11
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/var_clang_arm64.mak +0 -19
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/var_clang_x64.mak +0 -11
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/var_clang_x86.mak +0 -11
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/var_gcc.mak +0 -12
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/var_gcc_arm64.mak +0 -12
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/var_gcc_x64.mak +0 -11
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/var_gcc_x86.mak +0 -10
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/var_mac_arm64.mak +0 -13
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/var_mac_x64.mak +0 -11
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/warn_clang.mak +0 -3
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/warn_clang_mac.mak +0 -9
- package/harmony/pushy/src/main/cpp/lzma/CPP/7zip/warn_gcc.mak +0 -55
- package/harmony/pushy/src/main/cpp/lzma/CPP/Common/Common0.h +0 -330
- package/harmony/pushy/src/main/cpp/lzma/CPP/Common/DynLimBuf.cpp +0 -93
- package/harmony/pushy/src/main/cpp/lzma/CPP/Common/DynLimBuf.h +0 -41
- package/harmony/pushy/src/main/cpp/lzma/CPP/Common/LzFindPrepare.cpp +0 -7
- package/harmony/pushy/src/main/cpp/lzma/CPP/Common/Sha256Prepare.cpp +0 -7
- package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/Clipboard.cpp +0 -130
- package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/Clipboard.h +0 -28
- package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/MemoryGlobal.cpp +0 -36
- package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/MemoryGlobal.h +0 -55
- package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/SystemInfo.cpp +0 -1251
- package/harmony/pushy/src/main/cpp/lzma/CPP/Windows/SystemInfo.h +0 -19
- package/ios/ImportReact.h +0 -2
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/* Ppmd7.c -- PPMdH codec
|
|
2
|
-
|
|
2
|
+
2018-07-04 : Igor Pavlov : Public domain
|
|
3
3
|
This code is based on PPMd var.H (2001): Dmitry Shkarin : Public domain */
|
|
4
4
|
|
|
5
5
|
#include "Precomp.h"
|
|
@@ -8,23 +8,21 @@ This code is based on PPMd var.H (2001): Dmitry Shkarin : Public domain */
|
|
|
8
8
|
|
|
9
9
|
#include "Ppmd7.h"
|
|
10
10
|
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
MY_ALIGN(16)
|
|
15
|
-
static const Byte PPMD7_kExpEscape[16] = { 25, 14, 9, 7, 5, 5, 4, 4, 4, 3, 3, 3, 2, 2, 2, 2 };
|
|
16
|
-
MY_ALIGN(16)
|
|
17
|
-
static const UInt16 PPMD7_kInitBinEsc[] = { 0x3CDD, 0x1F3F, 0x59BF, 0x48F3, 0x64A1, 0x5ABC, 0x6632, 0x6051};
|
|
11
|
+
const Byte PPMD7_kExpEscape[16] = { 25, 14, 9, 7, 5, 5, 4, 4, 4, 3, 3, 3, 2, 2, 2, 2 };
|
|
12
|
+
static const UInt16 kInitBinEsc[] = { 0x3CDD, 0x1F3F, 0x59BF, 0x48F3, 0x64A1, 0x5ABC, 0x6632, 0x6051};
|
|
18
13
|
|
|
19
14
|
#define MAX_FREQ 124
|
|
20
15
|
#define UNIT_SIZE 12
|
|
21
16
|
|
|
22
17
|
#define U2B(nu) ((UInt32)(nu) * UNIT_SIZE)
|
|
23
18
|
#define U2I(nu) (p->Units2Indx[(size_t)(nu) - 1])
|
|
24
|
-
#define I2U(indx) (
|
|
25
|
-
#define I2U_UInt16(indx) ((UInt16)p->Indx2Units[indx])
|
|
19
|
+
#define I2U(indx) (p->Indx2Units[indx])
|
|
26
20
|
|
|
27
|
-
#
|
|
21
|
+
#ifdef PPMD_32BIT
|
|
22
|
+
#define REF(ptr) (ptr)
|
|
23
|
+
#else
|
|
24
|
+
#define REF(ptr) ((UInt32)((Byte *)(ptr) - (p)->Base))
|
|
25
|
+
#endif
|
|
28
26
|
|
|
29
27
|
#define STATS_REF(ptr) ((CPpmd_State_Ref)REF(ptr))
|
|
30
28
|
|
|
@@ -33,11 +31,17 @@ static const UInt16 PPMD7_kInitBinEsc[] = { 0x3CDD, 0x1F3F, 0x59BF, 0x48F3, 0x64
|
|
|
33
31
|
#define ONE_STATE(ctx) Ppmd7Context_OneState(ctx)
|
|
34
32
|
#define SUFFIX(ctx) CTX((ctx)->Suffix)
|
|
35
33
|
|
|
36
|
-
typedef CPpmd7_Context *
|
|
34
|
+
typedef CPpmd7_Context * CTX_PTR;
|
|
37
35
|
|
|
38
36
|
struct CPpmd7_Node_;
|
|
39
37
|
|
|
40
|
-
typedef
|
|
38
|
+
typedef
|
|
39
|
+
#ifdef PPMD_32BIT
|
|
40
|
+
struct CPpmd7_Node_ *
|
|
41
|
+
#else
|
|
42
|
+
UInt32
|
|
43
|
+
#endif
|
|
44
|
+
CPpmd7_Node_Ref;
|
|
41
45
|
|
|
42
46
|
typedef struct CPpmd7_Node_
|
|
43
47
|
{
|
|
@@ -47,13 +51,17 @@ typedef struct CPpmd7_Node_
|
|
|
47
51
|
CPpmd7_Node_Ref Prev;
|
|
48
52
|
} CPpmd7_Node;
|
|
49
53
|
|
|
50
|
-
#
|
|
54
|
+
#ifdef PPMD_32BIT
|
|
55
|
+
#define NODE(ptr) (ptr)
|
|
56
|
+
#else
|
|
57
|
+
#define NODE(offs) ((CPpmd7_Node *)(p->Base + (offs)))
|
|
58
|
+
#endif
|
|
51
59
|
|
|
52
60
|
void Ppmd7_Construct(CPpmd7 *p)
|
|
53
61
|
{
|
|
54
62
|
unsigned i, k, m;
|
|
55
63
|
|
|
56
|
-
p->Base =
|
|
64
|
+
p->Base = 0;
|
|
57
65
|
|
|
58
66
|
for (i = 0, k = 0; i < PPMD_NUM_INDEXES; i++)
|
|
59
67
|
{
|
|
@@ -69,7 +77,6 @@ void Ppmd7_Construct(CPpmd7 *p)
|
|
|
69
77
|
|
|
70
78
|
for (i = 0; i < 3; i++)
|
|
71
79
|
p->NS2Indx[i] = (Byte)i;
|
|
72
|
-
|
|
73
80
|
for (m = i, k = 1; i < 256; i++)
|
|
74
81
|
{
|
|
75
82
|
p->NS2Indx[i] = (Byte)m;
|
|
@@ -77,245 +84,183 @@ void Ppmd7_Construct(CPpmd7 *p)
|
|
|
77
84
|
k = (++m) - 2;
|
|
78
85
|
}
|
|
79
86
|
|
|
80
|
-
|
|
87
|
+
memset(p->HB2Flag, 0, 0x40);
|
|
88
|
+
memset(p->HB2Flag + 0x40, 8, 0x100 - 0x40);
|
|
81
89
|
}
|
|
82
90
|
|
|
83
|
-
|
|
84
91
|
void Ppmd7_Free(CPpmd7 *p, ISzAllocPtr alloc)
|
|
85
92
|
{
|
|
86
93
|
ISzAlloc_Free(alloc, p->Base);
|
|
87
94
|
p->Size = 0;
|
|
88
|
-
p->Base =
|
|
95
|
+
p->Base = 0;
|
|
89
96
|
}
|
|
90
97
|
|
|
91
|
-
|
|
92
98
|
BoolInt Ppmd7_Alloc(CPpmd7 *p, UInt32 size, ISzAllocPtr alloc)
|
|
93
99
|
{
|
|
94
100
|
if (!p->Base || p->Size != size)
|
|
95
101
|
{
|
|
102
|
+
size_t size2;
|
|
96
103
|
Ppmd7_Free(p, alloc);
|
|
97
|
-
|
|
98
|
-
|
|
104
|
+
size2 = 0
|
|
105
|
+
#ifndef PPMD_32BIT
|
|
106
|
+
+ UNIT_SIZE
|
|
107
|
+
#endif
|
|
108
|
+
;
|
|
109
|
+
p->AlignOffset =
|
|
110
|
+
#ifdef PPMD_32BIT
|
|
111
|
+
(4 - size) & 3;
|
|
112
|
+
#else
|
|
113
|
+
4 - (size & 3);
|
|
114
|
+
#endif
|
|
115
|
+
if ((p->Base = (Byte *)ISzAlloc_Alloc(alloc, p->AlignOffset + size + size2)) == 0)
|
|
99
116
|
return False;
|
|
100
117
|
p->Size = size;
|
|
101
118
|
}
|
|
102
119
|
return True;
|
|
103
120
|
}
|
|
104
121
|
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
// ---------- Internal Memory Allocator ----------
|
|
108
|
-
|
|
109
|
-
/* We can use CPpmd7_Node in list of free units (as in Ppmd8)
|
|
110
|
-
But we still need one additional list walk pass in Ppmd7_GlueFreeBlocks().
|
|
111
|
-
So we use simple CPpmd_Void_Ref instead of CPpmd7_Node in Ppmd7_InsertNode() / Ppmd7_RemoveNode()
|
|
112
|
-
*/
|
|
113
|
-
|
|
114
|
-
#define EMPTY_NODE 0
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
static void Ppmd7_InsertNode(CPpmd7 *p, void *node, unsigned indx)
|
|
122
|
+
static void InsertNode(CPpmd7 *p, void *node, unsigned indx)
|
|
118
123
|
{
|
|
119
124
|
*((CPpmd_Void_Ref *)node) = p->FreeList[indx];
|
|
120
|
-
// ((CPpmd7_Node *)node)->Next = (CPpmd7_Node_Ref)p->FreeList[indx];
|
|
121
|
-
|
|
122
125
|
p->FreeList[indx] = REF(node);
|
|
123
|
-
|
|
124
126
|
}
|
|
125
127
|
|
|
126
|
-
|
|
127
|
-
static void *Ppmd7_RemoveNode(CPpmd7 *p, unsigned indx)
|
|
128
|
+
static void *RemoveNode(CPpmd7 *p, unsigned indx)
|
|
128
129
|
{
|
|
129
130
|
CPpmd_Void_Ref *node = (CPpmd_Void_Ref *)Ppmd7_GetPtr(p, p->FreeList[indx]);
|
|
130
131
|
p->FreeList[indx] = *node;
|
|
131
|
-
// CPpmd7_Node *node = NODE((CPpmd7_Node_Ref)p->FreeList[indx]);
|
|
132
|
-
// p->FreeList[indx] = node->Next;
|
|
133
132
|
return node;
|
|
134
133
|
}
|
|
135
134
|
|
|
136
|
-
|
|
137
|
-
static void Ppmd7_SplitBlock(CPpmd7 *p, void *ptr, unsigned oldIndx, unsigned newIndx)
|
|
135
|
+
static void SplitBlock(CPpmd7 *p, void *ptr, unsigned oldIndx, unsigned newIndx)
|
|
138
136
|
{
|
|
139
137
|
unsigned i, nu = I2U(oldIndx) - I2U(newIndx);
|
|
140
138
|
ptr = (Byte *)ptr + U2B(I2U(newIndx));
|
|
141
139
|
if (I2U(i = U2I(nu)) != nu)
|
|
142
140
|
{
|
|
143
141
|
unsigned k = I2U(--i);
|
|
144
|
-
|
|
142
|
+
InsertNode(p, ((Byte *)ptr) + U2B(k), nu - k - 1);
|
|
145
143
|
}
|
|
146
|
-
|
|
144
|
+
InsertNode(p, ptr, i);
|
|
147
145
|
}
|
|
148
146
|
|
|
149
|
-
|
|
150
|
-
/* we use CPpmd7_Node_Union union to solve XLC -O2 strict pointer aliasing problem */
|
|
151
|
-
|
|
152
|
-
typedef union
|
|
147
|
+
static void GlueFreeBlocks(CPpmd7 *p)
|
|
153
148
|
{
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
149
|
+
#ifdef PPMD_32BIT
|
|
150
|
+
CPpmd7_Node headItem;
|
|
151
|
+
CPpmd7_Node_Ref head = &headItem;
|
|
152
|
+
#else
|
|
153
|
+
CPpmd7_Node_Ref head = p->AlignOffset + p->Size;
|
|
154
|
+
#endif
|
|
155
|
+
|
|
156
|
+
CPpmd7_Node_Ref n = head;
|
|
157
|
+
unsigned i;
|
|
161
158
|
|
|
162
|
-
static void Ppmd7_GlueFreeBlocks(CPpmd7 *p)
|
|
163
|
-
{
|
|
164
|
-
/*
|
|
165
|
-
we use first UInt16 field of 12-bytes UNITs as record type stamp
|
|
166
|
-
CPpmd_State { Byte Symbol; Byte Freq; : Freq != 0
|
|
167
|
-
CPpmd7_Context { UInt16 NumStats; : NumStats != 0
|
|
168
|
-
CPpmd7_Node { UInt16 Stamp : Stamp == 0 for free record
|
|
169
|
-
: Stamp == 1 for head record and guard
|
|
170
|
-
Last 12-bytes UNIT in array is always contains 12-bytes order-0 CPpmd7_Context record.
|
|
171
|
-
*/
|
|
172
|
-
CPpmd7_Node_Ref head, n = 0;
|
|
173
|
-
|
|
174
159
|
p->GlueCount = 255;
|
|
175
160
|
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
if (p->LoUnit != p->HiUnit)
|
|
179
|
-
((CPpmd7_Node *)(void *)p->LoUnit)->Stamp = 1;
|
|
180
|
-
|
|
161
|
+
/* create doubly-linked list of free blocks */
|
|
162
|
+
for (i = 0; i < PPMD_NUM_INDEXES; i++)
|
|
181
163
|
{
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
164
|
+
UInt16 nu = I2U(i);
|
|
165
|
+
CPpmd7_Node_Ref next = (CPpmd7_Node_Ref)p->FreeList[i];
|
|
166
|
+
p->FreeList[i] = 0;
|
|
167
|
+
while (next != 0)
|
|
186
168
|
{
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
CPpmd7_Node_Union *un = (CPpmd7_Node_Union *)NODE(next);
|
|
194
|
-
const CPpmd7_Node_Ref tmp = next;
|
|
195
|
-
next = un->NextRef;
|
|
196
|
-
un->Node.Stamp = EMPTY_NODE;
|
|
197
|
-
un->Node.NU = nu;
|
|
198
|
-
un->Node.Next = n;
|
|
199
|
-
n = tmp;
|
|
200
|
-
}
|
|
169
|
+
CPpmd7_Node *node = NODE(next);
|
|
170
|
+
node->Next = n;
|
|
171
|
+
n = NODE(n)->Prev = next;
|
|
172
|
+
next = *(const CPpmd7_Node_Ref *)node;
|
|
173
|
+
node->Stamp = 0;
|
|
174
|
+
node->NU = (UInt16)nu;
|
|
201
175
|
}
|
|
202
176
|
}
|
|
203
|
-
|
|
204
|
-
head = n;
|
|
205
|
-
|
|
177
|
+
NODE(head)->Stamp = 1;
|
|
178
|
+
NODE(head)->Next = n;
|
|
179
|
+
NODE(n)->Prev = head;
|
|
180
|
+
if (p->LoUnit != p->HiUnit)
|
|
181
|
+
((CPpmd7_Node *)p->LoUnit)->Stamp = 1;
|
|
182
|
+
|
|
183
|
+
/* Glue free blocks */
|
|
184
|
+
while (n != head)
|
|
206
185
|
{
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
186
|
+
CPpmd7_Node *node = NODE(n);
|
|
187
|
+
UInt32 nu = (UInt32)node->NU;
|
|
188
|
+
for (;;)
|
|
210
189
|
{
|
|
211
|
-
CPpmd7_Node *
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
}
|
|
219
|
-
prev = &node->Next;
|
|
220
|
-
for (;;)
|
|
221
|
-
{
|
|
222
|
-
CPpmd7_Node *node2 = node + nu;
|
|
223
|
-
nu += node2->NU;
|
|
224
|
-
if (node2->Stamp != EMPTY_NODE || nu >= 0x10000)
|
|
225
|
-
break;
|
|
226
|
-
node->NU = (UInt16)nu;
|
|
227
|
-
node2->NU = 0;
|
|
228
|
-
}
|
|
190
|
+
CPpmd7_Node *node2 = NODE(n) + nu;
|
|
191
|
+
nu += node2->NU;
|
|
192
|
+
if (node2->Stamp != 0 || nu >= 0x10000)
|
|
193
|
+
break;
|
|
194
|
+
NODE(node2->Prev)->Next = node2->Next;
|
|
195
|
+
NODE(node2->Next)->Prev = node2->Prev;
|
|
196
|
+
node->NU = (UInt16)nu;
|
|
229
197
|
}
|
|
198
|
+
n = node->Next;
|
|
230
199
|
}
|
|
231
|
-
|
|
200
|
+
|
|
232
201
|
/* Fill lists of free blocks */
|
|
233
|
-
for (n = head; n !=
|
|
202
|
+
for (n = NODE(head)->Next; n != head;)
|
|
234
203
|
{
|
|
235
204
|
CPpmd7_Node *node = NODE(n);
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
continue;
|
|
241
|
-
for (; nu > 128; nu -= 128, node += 128)
|
|
242
|
-
Ppmd7_InsertNode(p, node, PPMD_NUM_INDEXES - 1);
|
|
205
|
+
unsigned nu;
|
|
206
|
+
CPpmd7_Node_Ref next = node->Next;
|
|
207
|
+
for (nu = node->NU; nu > 128; nu -= 128, node += 128)
|
|
208
|
+
InsertNode(p, node, PPMD_NUM_INDEXES - 1);
|
|
243
209
|
if (I2U(i = U2I(nu)) != nu)
|
|
244
210
|
{
|
|
245
211
|
unsigned k = I2U(--i);
|
|
246
|
-
|
|
212
|
+
InsertNode(p, node + k, nu - k - 1);
|
|
247
213
|
}
|
|
248
|
-
|
|
214
|
+
InsertNode(p, node, i);
|
|
215
|
+
n = next;
|
|
249
216
|
}
|
|
250
217
|
}
|
|
251
218
|
|
|
252
|
-
|
|
253
|
-
Z7_NO_INLINE
|
|
254
|
-
static void *Ppmd7_AllocUnitsRare(CPpmd7 *p, unsigned indx)
|
|
219
|
+
static void *AllocUnitsRare(CPpmd7 *p, unsigned indx)
|
|
255
220
|
{
|
|
256
221
|
unsigned i;
|
|
257
|
-
|
|
222
|
+
void *retVal;
|
|
258
223
|
if (p->GlueCount == 0)
|
|
259
224
|
{
|
|
260
|
-
|
|
225
|
+
GlueFreeBlocks(p);
|
|
261
226
|
if (p->FreeList[indx] != 0)
|
|
262
|
-
return
|
|
227
|
+
return RemoveNode(p, indx);
|
|
263
228
|
}
|
|
264
|
-
|
|
265
229
|
i = indx;
|
|
266
|
-
|
|
267
230
|
do
|
|
268
231
|
{
|
|
269
232
|
if (++i == PPMD_NUM_INDEXES)
|
|
270
233
|
{
|
|
271
234
|
UInt32 numBytes = U2B(I2U(indx));
|
|
272
|
-
Byte *us = p->UnitsStart;
|
|
273
235
|
p->GlueCount--;
|
|
274
|
-
return ((UInt32)(
|
|
236
|
+
return ((UInt32)(p->UnitsStart - p->Text) > numBytes) ? (p->UnitsStart -= numBytes) : (NULL);
|
|
275
237
|
}
|
|
276
238
|
}
|
|
277
239
|
while (p->FreeList[i] == 0);
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
Ppmd7_SplitBlock(p, block, i, indx);
|
|
282
|
-
return block;
|
|
283
|
-
}
|
|
240
|
+
retVal = RemoveNode(p, i);
|
|
241
|
+
SplitBlock(p, retVal, i, indx);
|
|
242
|
+
return retVal;
|
|
284
243
|
}
|
|
285
244
|
|
|
286
|
-
|
|
287
|
-
static void *Ppmd7_AllocUnits(CPpmd7 *p, unsigned indx)
|
|
245
|
+
static void *AllocUnits(CPpmd7 *p, unsigned indx)
|
|
288
246
|
{
|
|
247
|
+
UInt32 numBytes;
|
|
289
248
|
if (p->FreeList[indx] != 0)
|
|
290
|
-
return
|
|
249
|
+
return RemoveNode(p, indx);
|
|
250
|
+
numBytes = U2B(I2U(indx));
|
|
251
|
+
if (numBytes <= (UInt32)(p->HiUnit - p->LoUnit))
|
|
291
252
|
{
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
{
|
|
296
|
-
p->LoUnit = lo + numBytes;
|
|
297
|
-
return lo;
|
|
298
|
-
}
|
|
253
|
+
void *retVal = p->LoUnit;
|
|
254
|
+
p->LoUnit += numBytes;
|
|
255
|
+
return retVal;
|
|
299
256
|
}
|
|
300
|
-
return
|
|
257
|
+
return AllocUnitsRare(p, indx);
|
|
301
258
|
}
|
|
302
259
|
|
|
260
|
+
#define MyMem12Cpy(dest, src, num) \
|
|
261
|
+
{ UInt32 *d = (UInt32 *)dest; const UInt32 *s = (const UInt32 *)src; UInt32 n = num; \
|
|
262
|
+
do { d[0] = s[0]; d[1] = s[1]; d[2] = s[2]; s += 3; d += 3; } while (--n); }
|
|
303
263
|
|
|
304
|
-
#define MEM_12_CPY(dest, src, num) \
|
|
305
|
-
{ UInt32 *d = (UInt32 *)(dest); \
|
|
306
|
-
const UInt32 *z = (const UInt32 *)(src); \
|
|
307
|
-
unsigned n = (num); \
|
|
308
|
-
do { \
|
|
309
|
-
d[0] = z[0]; \
|
|
310
|
-
d[1] = z[1]; \
|
|
311
|
-
d[2] = z[2]; \
|
|
312
|
-
z += 3; \
|
|
313
|
-
d += 3; \
|
|
314
|
-
} while (--n); \
|
|
315
|
-
}
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
/*
|
|
319
264
|
static void *ShrinkUnits(CPpmd7 *p, void *oldPtr, unsigned oldNU, unsigned newNU)
|
|
320
265
|
{
|
|
321
266
|
unsigned i0 = U2I(oldNU);
|
|
@@ -324,33 +269,28 @@ static void *ShrinkUnits(CPpmd7 *p, void *oldPtr, unsigned oldNU, unsigned newNU
|
|
|
324
269
|
return oldPtr;
|
|
325
270
|
if (p->FreeList[i1] != 0)
|
|
326
271
|
{
|
|
327
|
-
void *ptr =
|
|
328
|
-
|
|
329
|
-
|
|
272
|
+
void *ptr = RemoveNode(p, i1);
|
|
273
|
+
MyMem12Cpy(ptr, oldPtr, newNU);
|
|
274
|
+
InsertNode(p, oldPtr, i0);
|
|
330
275
|
return ptr;
|
|
331
276
|
}
|
|
332
|
-
|
|
277
|
+
SplitBlock(p, oldPtr, i0, i1);
|
|
333
278
|
return oldPtr;
|
|
334
279
|
}
|
|
335
|
-
*/
|
|
336
280
|
|
|
281
|
+
#define SUCCESSOR(p) ((CPpmd_Void_Ref)((p)->SuccessorLow | ((UInt32)(p)->SuccessorHigh << 16)))
|
|
337
282
|
|
|
338
|
-
#define SUCCESSOR(p) Ppmd_GET_SUCCESSOR(p)
|
|
339
283
|
static void SetSuccessor(CPpmd_State *p, CPpmd_Void_Ref v)
|
|
340
284
|
{
|
|
341
|
-
|
|
285
|
+
(p)->SuccessorLow = (UInt16)((UInt32)(v) & 0xFFFF);
|
|
286
|
+
(p)->SuccessorHigh = (UInt16)(((UInt32)(v) >> 16) & 0xFFFF);
|
|
342
287
|
}
|
|
343
288
|
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
Z7_NO_INLINE
|
|
347
|
-
static
|
|
348
|
-
void Ppmd7_RestartModel(CPpmd7 *p)
|
|
289
|
+
static void RestartModel(CPpmd7 *p)
|
|
349
290
|
{
|
|
350
|
-
unsigned i, k;
|
|
291
|
+
unsigned i, k, m;
|
|
351
292
|
|
|
352
293
|
memset(p->FreeList, 0, sizeof(p->FreeList));
|
|
353
|
-
|
|
354
294
|
p->Text = p->Base + p->AlignOffset;
|
|
355
295
|
p->HiUnit = p->Text + p->Size;
|
|
356
296
|
p->LoUnit = p->UnitsStart = p->HiUnit - p->Size / 8 / UNIT_SIZE * 7 * UNIT_SIZE;
|
|
@@ -360,110 +300,57 @@ void Ppmd7_RestartModel(CPpmd7 *p)
|
|
|
360
300
|
p->RunLength = p->InitRL = -(Int32)((p->MaxOrder < 12) ? p->MaxOrder : 12) - 1;
|
|
361
301
|
p->PrevSuccess = 0;
|
|
362
302
|
|
|
303
|
+
p->MinContext = p->MaxContext = (CTX_PTR)(p->HiUnit -= UNIT_SIZE); /* AllocContext(p); */
|
|
304
|
+
p->MinContext->Suffix = 0;
|
|
305
|
+
p->MinContext->NumStats = 256;
|
|
306
|
+
p->MinContext->SummFreq = 256 + 1;
|
|
307
|
+
p->FoundState = (CPpmd_State *)p->LoUnit; /* AllocUnits(p, PPMD_NUM_INDEXES - 1); */
|
|
308
|
+
p->LoUnit += U2B(256 / 2);
|
|
309
|
+
p->MinContext->Stats = REF(p->FoundState);
|
|
310
|
+
for (i = 0; i < 256; i++)
|
|
363
311
|
{
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
p->MaxContext = p->MinContext = mc;
|
|
369
|
-
p->FoundState = s;
|
|
370
|
-
|
|
371
|
-
mc->NumStats = 256;
|
|
372
|
-
mc->Union2.SummFreq = 256 + 1;
|
|
373
|
-
mc->Union4.Stats = REF(s);
|
|
374
|
-
mc->Suffix = 0;
|
|
375
|
-
|
|
376
|
-
for (i = 0; i < 256; i++, s++)
|
|
377
|
-
{
|
|
378
|
-
s->Symbol = (Byte)i;
|
|
379
|
-
s->Freq = 1;
|
|
380
|
-
SetSuccessor(s, 0);
|
|
381
|
-
}
|
|
382
|
-
|
|
383
|
-
#ifdef PPMD7_ORDER_0_SUPPPORT
|
|
384
|
-
if (p->MaxOrder == 0)
|
|
385
|
-
{
|
|
386
|
-
CPpmd_Void_Ref r = REF(mc);
|
|
387
|
-
s = p->FoundState;
|
|
388
|
-
for (i = 0; i < 256; i++, s++)
|
|
389
|
-
SetSuccessor(s, r);
|
|
390
|
-
return;
|
|
391
|
-
}
|
|
392
|
-
#endif
|
|
312
|
+
CPpmd_State *s = &p->FoundState[i];
|
|
313
|
+
s->Symbol = (Byte)i;
|
|
314
|
+
s->Freq = 1;
|
|
315
|
+
SetSuccessor(s, 0);
|
|
393
316
|
}
|
|
394
317
|
|
|
395
318
|
for (i = 0; i < 128; i++)
|
|
396
|
-
|
|
397
|
-
|
|
398
|
-
|
|
399
319
|
for (k = 0; k < 8; k++)
|
|
400
320
|
{
|
|
401
|
-
unsigned m;
|
|
402
321
|
UInt16 *dest = p->BinSumm[i] + k;
|
|
403
|
-
|
|
322
|
+
UInt16 val = (UInt16)(PPMD_BIN_SCALE - kInitBinEsc[k] / (i + 2));
|
|
404
323
|
for (m = 0; m < 64; m += 8)
|
|
405
324
|
dest[m] = val;
|
|
406
325
|
}
|
|
407
|
-
|
|
408
|
-
|
|
326
|
+
|
|
409
327
|
for (i = 0; i < 25; i++)
|
|
410
|
-
|
|
411
|
-
|
|
412
|
-
CPpmd_See *s = p->See[i];
|
|
413
|
-
|
|
414
|
-
|
|
415
|
-
|
|
416
|
-
unsigned summ = ((5 * i + 10) << (PPMD_PERIOD_BITS - 4));
|
|
417
|
-
for (k = 0; k < 16; k++, s++)
|
|
328
|
+
for (k = 0; k < 16; k++)
|
|
418
329
|
{
|
|
419
|
-
s
|
|
420
|
-
s->Shift =
|
|
330
|
+
CPpmd_See *s = &p->See[i][k];
|
|
331
|
+
s->Summ = (UInt16)((5 * i + 10) << (s->Shift = PPMD_PERIOD_BITS - 4));
|
|
421
332
|
s->Count = 4;
|
|
422
333
|
}
|
|
423
|
-
}
|
|
424
|
-
|
|
425
|
-
p->DummySee.Summ = 0; /* unused */
|
|
426
|
-
p->DummySee.Shift = PPMD_PERIOD_BITS;
|
|
427
|
-
p->DummySee.Count = 64; /* unused */
|
|
428
334
|
}
|
|
429
335
|
|
|
430
|
-
|
|
431
336
|
void Ppmd7_Init(CPpmd7 *p, unsigned maxOrder)
|
|
432
337
|
{
|
|
433
338
|
p->MaxOrder = maxOrder;
|
|
434
|
-
|
|
435
|
-
|
|
339
|
+
RestartModel(p);
|
|
340
|
+
p->DummySee.Shift = PPMD_PERIOD_BITS;
|
|
341
|
+
p->DummySee.Summ = 0; /* unused */
|
|
342
|
+
p->DummySee.Count = 64; /* unused */
|
|
436
343
|
}
|
|
437
344
|
|
|
438
|
-
|
|
439
|
-
|
|
440
|
-
/*
|
|
441
|
-
Ppmd7_CreateSuccessors()
|
|
442
|
-
It's called when (FoundState->Successor) is RAW-Successor,
|
|
443
|
-
that is the link to position in Raw text.
|
|
444
|
-
So we create Context records and write the links to
|
|
445
|
-
FoundState->Successor and to identical RAW-Successors in suffix
|
|
446
|
-
contexts of MinContex.
|
|
447
|
-
|
|
448
|
-
The function returns:
|
|
449
|
-
if (OrderFall == 0) then MinContext is already at MAX order,
|
|
450
|
-
{ return pointer to new or existing context of same MAX order }
|
|
451
|
-
else
|
|
452
|
-
{ return pointer to new real context that will be (Order+1) in comparison with MinContext
|
|
453
|
-
|
|
454
|
-
also it can return pointer to real context of same order,
|
|
455
|
-
*/
|
|
456
|
-
|
|
457
|
-
Z7_NO_INLINE
|
|
458
|
-
static PPMD7_CTX_PTR Ppmd7_CreateSuccessors(CPpmd7 *p)
|
|
345
|
+
static CTX_PTR CreateSuccessors(CPpmd7 *p, BoolInt skip)
|
|
459
346
|
{
|
|
460
|
-
|
|
347
|
+
CPpmd_State upState;
|
|
348
|
+
CTX_PTR c = p->MinContext;
|
|
461
349
|
CPpmd_Byte_Ref upBranch = (CPpmd_Byte_Ref)SUCCESSOR(p->FoundState);
|
|
462
|
-
Byte newSym, newFreq;
|
|
463
|
-
unsigned numPs = 0;
|
|
464
350
|
CPpmd_State *ps[PPMD7_MAX_ORDER];
|
|
465
|
-
|
|
466
|
-
|
|
351
|
+
unsigned numPs = 0;
|
|
352
|
+
|
|
353
|
+
if (!skip)
|
|
467
354
|
ps[numPs++] = p->FoundState;
|
|
468
355
|
|
|
469
356
|
while (c->Suffix)
|
|
@@ -471,83 +358,54 @@ static PPMD7_CTX_PTR Ppmd7_CreateSuccessors(CPpmd7 *p)
|
|
|
471
358
|
CPpmd_Void_Ref successor;
|
|
472
359
|
CPpmd_State *s;
|
|
473
360
|
c = SUFFIX(c);
|
|
474
|
-
|
|
475
|
-
|
|
476
361
|
if (c->NumStats != 1)
|
|
477
362
|
{
|
|
478
|
-
|
|
479
|
-
for (s = STATS(c); s->Symbol != sym; s++);
|
|
480
|
-
|
|
363
|
+
for (s = STATS(c); s->Symbol != p->FoundState->Symbol; s++);
|
|
481
364
|
}
|
|
482
365
|
else
|
|
483
|
-
{
|
|
484
366
|
s = ONE_STATE(c);
|
|
485
|
-
|
|
486
|
-
}
|
|
487
367
|
successor = SUCCESSOR(s);
|
|
488
368
|
if (successor != upBranch)
|
|
489
369
|
{
|
|
490
|
-
// (c) is real record Context here,
|
|
491
370
|
c = CTX(successor);
|
|
492
371
|
if (numPs == 0)
|
|
493
|
-
{
|
|
494
|
-
// (c) is real record MAX Order Context here,
|
|
495
|
-
// So we don't need to create any new contexts.
|
|
496
372
|
return c;
|
|
497
|
-
}
|
|
498
373
|
break;
|
|
499
374
|
}
|
|
500
375
|
ps[numPs++] = s;
|
|
501
376
|
}
|
|
502
377
|
|
|
503
|
-
|
|
504
|
-
|
|
505
|
-
// after FoundState->Successor
|
|
506
|
-
|
|
507
|
-
newSym = *(const Byte *)Ppmd7_GetPtr(p, upBranch);
|
|
508
|
-
upBranch++;
|
|
509
|
-
|
|
378
|
+
upState.Symbol = *(const Byte *)Ppmd7_GetPtr(p, upBranch);
|
|
379
|
+
SetSuccessor(&upState, upBranch + 1);
|
|
510
380
|
|
|
511
381
|
if (c->NumStats == 1)
|
|
512
|
-
|
|
382
|
+
upState.Freq = ONE_STATE(c)->Freq;
|
|
513
383
|
else
|
|
514
384
|
{
|
|
515
385
|
UInt32 cf, s0;
|
|
516
386
|
CPpmd_State *s;
|
|
517
|
-
for (s = STATS(c); s->Symbol !=
|
|
518
|
-
cf =
|
|
519
|
-
s0 =
|
|
520
|
-
|
|
521
|
-
cf - is frequency of symbol that will be Successor in new context records.
|
|
522
|
-
s0 - is commulative frequency sum of another symbols from parent context.
|
|
523
|
-
max(newFreq)= (s->Freq + 1), when (s0 == 1)
|
|
524
|
-
we have requirement (Ppmd7Context_OneState()->Freq <= 128) in BinSumm[]
|
|
525
|
-
so (s->Freq < 128) - is requirement for multi-symbol contexts
|
|
526
|
-
*/
|
|
527
|
-
newFreq = (Byte)(1 + ((2 * cf <= s0) ? (5 * cf > s0) : (2 * cf + s0 - 1) / (2 * s0) + 1));
|
|
387
|
+
for (s = STATS(c); s->Symbol != upState.Symbol; s++);
|
|
388
|
+
cf = s->Freq - 1;
|
|
389
|
+
s0 = c->SummFreq - c->NumStats - cf;
|
|
390
|
+
upState.Freq = (Byte)(1 + ((2 * cf <= s0) ? (5 * cf > s0) : ((2 * cf + 3 * s0 - 1) / (2 * s0))));
|
|
528
391
|
}
|
|
529
392
|
|
|
530
|
-
// Create new single-symbol contexts from low order to high order in loop
|
|
531
|
-
|
|
532
393
|
do
|
|
533
394
|
{
|
|
534
|
-
|
|
535
|
-
/* = AllocContext(p); */
|
|
395
|
+
/* Create Child */
|
|
396
|
+
CTX_PTR c1; /* = AllocContext(p); */
|
|
536
397
|
if (p->HiUnit != p->LoUnit)
|
|
537
|
-
c1 = (
|
|
398
|
+
c1 = (CTX_PTR)(p->HiUnit -= UNIT_SIZE);
|
|
538
399
|
else if (p->FreeList[0] != 0)
|
|
539
|
-
c1 = (
|
|
400
|
+
c1 = (CTX_PTR)RemoveNode(p, 0);
|
|
540
401
|
else
|
|
541
402
|
{
|
|
542
|
-
c1 = (
|
|
403
|
+
c1 = (CTX_PTR)AllocUnitsRare(p, 0);
|
|
543
404
|
if (!c1)
|
|
544
405
|
return NULL;
|
|
545
406
|
}
|
|
546
|
-
|
|
547
407
|
c1->NumStats = 1;
|
|
548
|
-
ONE_STATE(c1)
|
|
549
|
-
ONE_STATE(c1)->Freq = newFreq;
|
|
550
|
-
SetSuccessor(ONE_STATE(c1), upBranch);
|
|
408
|
+
*ONE_STATE(c1) = upState;
|
|
551
409
|
c1->Suffix = REF(c);
|
|
552
410
|
SetSuccessor(ps[--numPs], REF(c1));
|
|
553
411
|
c = c1;
|
|
@@ -557,26 +415,21 @@ static PPMD7_CTX_PTR Ppmd7_CreateSuccessors(CPpmd7 *p)
|
|
|
557
415
|
return c;
|
|
558
416
|
}
|
|
559
417
|
|
|
418
|
+
static void SwapStates(CPpmd_State *t1, CPpmd_State *t2)
|
|
419
|
+
{
|
|
420
|
+
CPpmd_State tmp = *t1;
|
|
421
|
+
*t1 = *t2;
|
|
422
|
+
*t2 = tmp;
|
|
423
|
+
}
|
|
560
424
|
|
|
561
|
-
|
|
562
|
-
#define SWAP_STATES(s) \
|
|
563
|
-
{ CPpmd_State tmp = s[0]; s[0] = s[-1]; s[-1] = tmp; }
|
|
564
|
-
|
|
565
|
-
|
|
566
|
-
void Ppmd7_UpdateModel(CPpmd7 *p);
|
|
567
|
-
Z7_NO_INLINE
|
|
568
|
-
void Ppmd7_UpdateModel(CPpmd7 *p)
|
|
425
|
+
static void UpdateModel(CPpmd7 *p)
|
|
569
426
|
{
|
|
570
|
-
CPpmd_Void_Ref
|
|
571
|
-
|
|
427
|
+
CPpmd_Void_Ref successor, fSuccessor = SUCCESSOR(p->FoundState);
|
|
428
|
+
CTX_PTR c;
|
|
572
429
|
unsigned s0, ns;
|
|
573
|
-
|
|
574
|
-
|
|
575
|
-
|
|
430
|
+
|
|
576
431
|
if (p->FoundState->Freq < MAX_FREQ / 4 && p->MinContext->Suffix != 0)
|
|
577
432
|
{
|
|
578
|
-
/* Update Freqs in Suffix Context */
|
|
579
|
-
|
|
580
433
|
c = SUFFIX(p->MinContext);
|
|
581
434
|
|
|
582
435
|
if (c->NumStats == 1)
|
|
@@ -588,273 +441,166 @@ void Ppmd7_UpdateModel(CPpmd7 *p)
|
|
|
588
441
|
else
|
|
589
442
|
{
|
|
590
443
|
CPpmd_State *s = STATS(c);
|
|
591
|
-
|
|
592
|
-
|
|
593
|
-
if (s->Symbol != sym)
|
|
444
|
+
if (s->Symbol != p->FoundState->Symbol)
|
|
594
445
|
{
|
|
595
|
-
do
|
|
596
|
-
{
|
|
597
|
-
// s++; if (s->Symbol == sym) break;
|
|
598
|
-
s++;
|
|
599
|
-
}
|
|
600
|
-
while (s->Symbol != sym);
|
|
601
|
-
|
|
446
|
+
do { s++; } while (s->Symbol != p->FoundState->Symbol);
|
|
602
447
|
if (s[0].Freq >= s[-1].Freq)
|
|
603
448
|
{
|
|
604
|
-
|
|
449
|
+
SwapStates(&s[0], &s[-1]);
|
|
605
450
|
s--;
|
|
606
451
|
}
|
|
607
452
|
}
|
|
608
|
-
|
|
609
453
|
if (s->Freq < MAX_FREQ - 9)
|
|
610
454
|
{
|
|
611
|
-
s->Freq
|
|
612
|
-
c->
|
|
455
|
+
s->Freq += 2;
|
|
456
|
+
c->SummFreq += 2;
|
|
613
457
|
}
|
|
614
458
|
}
|
|
615
459
|
}
|
|
616
460
|
|
|
617
|
-
|
|
618
461
|
if (p->OrderFall == 0)
|
|
619
462
|
{
|
|
620
|
-
|
|
621
|
-
|
|
622
|
-
p->MaxContext = p->MinContext = Ppmd7_CreateSuccessors(p);
|
|
623
|
-
if (!p->MinContext)
|
|
463
|
+
p->MinContext = p->MaxContext = CreateSuccessors(p, True);
|
|
464
|
+
if (p->MinContext == 0)
|
|
624
465
|
{
|
|
625
|
-
|
|
466
|
+
RestartModel(p);
|
|
626
467
|
return;
|
|
627
468
|
}
|
|
628
469
|
SetSuccessor(p->FoundState, REF(p->MinContext));
|
|
629
470
|
return;
|
|
630
471
|
}
|
|
631
|
-
|
|
632
|
-
|
|
633
|
-
/* NON-MAX ORDER context */
|
|
634
472
|
|
|
473
|
+
*p->Text++ = p->FoundState->Symbol;
|
|
474
|
+
successor = REF(p->Text);
|
|
475
|
+
if (p->Text >= p->UnitsStart)
|
|
635
476
|
{
|
|
636
|
-
|
|
637
|
-
|
|
638
|
-
p->Text = text;
|
|
639
|
-
if (text >= p->UnitsStart)
|
|
640
|
-
{
|
|
641
|
-
Ppmd7_RestartModel(p);
|
|
642
|
-
return;
|
|
643
|
-
}
|
|
644
|
-
maxSuccessor = REF(text);
|
|
477
|
+
RestartModel(p);
|
|
478
|
+
return;
|
|
645
479
|
}
|
|
646
480
|
|
|
647
|
-
|
|
648
|
-
|
|
649
|
-
if (minSuccessor)
|
|
481
|
+
if (fSuccessor)
|
|
650
482
|
{
|
|
651
|
-
|
|
652
|
-
// So the next context will be one order higher than MinContext.
|
|
653
|
-
|
|
654
|
-
if (minSuccessor <= maxSuccessor)
|
|
483
|
+
if (fSuccessor <= successor)
|
|
655
484
|
{
|
|
656
|
-
|
|
657
|
-
|
|
658
|
-
if (!cs)
|
|
485
|
+
CTX_PTR cs = CreateSuccessors(p, False);
|
|
486
|
+
if (cs == NULL)
|
|
659
487
|
{
|
|
660
|
-
|
|
488
|
+
RestartModel(p);
|
|
661
489
|
return;
|
|
662
490
|
}
|
|
663
|
-
|
|
491
|
+
fSuccessor = REF(cs);
|
|
664
492
|
}
|
|
665
|
-
|
|
666
|
-
// minSuccessor now is real Context pointer that points to existing (Order+1) context
|
|
667
|
-
|
|
668
493
|
if (--p->OrderFall == 0)
|
|
669
494
|
{
|
|
670
|
-
|
|
671
|
-
if we move to MaxOrder context, then minSuccessor will be common Succesor for both:
|
|
672
|
-
MinContext that is (MaxOrder - 1)
|
|
673
|
-
MaxContext that is (MaxOrder)
|
|
674
|
-
so we don't need new RAW-Successor, and we can use real minSuccessor
|
|
675
|
-
as succssors for both MinContext and MaxContext.
|
|
676
|
-
*/
|
|
677
|
-
maxSuccessor = minSuccessor;
|
|
678
|
-
|
|
679
|
-
/*
|
|
680
|
-
if (MaxContext != MinContext)
|
|
681
|
-
{
|
|
682
|
-
there was order fall from MaxOrder and we don't need current symbol
|
|
683
|
-
to transfer some RAW-Succesors to real contexts.
|
|
684
|
-
So we roll back pointer in raw data for one position.
|
|
685
|
-
}
|
|
686
|
-
*/
|
|
495
|
+
successor = fSuccessor;
|
|
687
496
|
p->Text -= (p->MaxContext != p->MinContext);
|
|
688
497
|
}
|
|
689
498
|
}
|
|
690
499
|
else
|
|
691
500
|
{
|
|
692
|
-
|
|
693
|
-
|
|
694
|
-
And only root 0-order context can contain NULL-Successors.
|
|
695
|
-
We change Successor in FoundState to RAW-Successor,
|
|
696
|
-
And next context will be same 0-order root Context.
|
|
697
|
-
*/
|
|
698
|
-
SetSuccessor(p->FoundState, maxSuccessor);
|
|
699
|
-
minSuccessor = REF(p->MinContext);
|
|
501
|
+
SetSuccessor(p->FoundState, successor);
|
|
502
|
+
fSuccessor = REF(p->MinContext);
|
|
700
503
|
}
|
|
701
|
-
|
|
702
|
-
|
|
703
|
-
|
|
704
|
-
|
|
705
|
-
p->MaxContext = p->MinContext = CTX(minSuccessor);
|
|
706
|
-
|
|
707
|
-
if (c == mc)
|
|
708
|
-
return;
|
|
709
|
-
|
|
710
|
-
// s0 : is pure Escape Freq
|
|
711
|
-
s0 = mc->Union2.SummFreq - (ns = mc->NumStats) - ((unsigned)p->FoundState->Freq - 1);
|
|
712
|
-
|
|
713
|
-
do
|
|
504
|
+
|
|
505
|
+
s0 = p->MinContext->SummFreq - (ns = p->MinContext->NumStats) - (p->FoundState->Freq - 1);
|
|
506
|
+
|
|
507
|
+
for (c = p->MaxContext; c != p->MinContext; c = SUFFIX(c))
|
|
714
508
|
{
|
|
715
509
|
unsigned ns1;
|
|
716
|
-
UInt32
|
|
717
|
-
|
|
510
|
+
UInt32 cf, sf;
|
|
718
511
|
if ((ns1 = c->NumStats) != 1)
|
|
719
512
|
{
|
|
720
513
|
if ((ns1 & 1) == 0)
|
|
721
514
|
{
|
|
722
515
|
/* Expand for one UNIT */
|
|
723
|
-
|
|
724
|
-
|
|
516
|
+
unsigned oldNU = ns1 >> 1;
|
|
517
|
+
unsigned i = U2I(oldNU);
|
|
725
518
|
if (i != U2I((size_t)oldNU + 1))
|
|
726
519
|
{
|
|
727
|
-
void *ptr =
|
|
520
|
+
void *ptr = AllocUnits(p, i + 1);
|
|
728
521
|
void *oldPtr;
|
|
729
522
|
if (!ptr)
|
|
730
523
|
{
|
|
731
|
-
|
|
524
|
+
RestartModel(p);
|
|
732
525
|
return;
|
|
733
526
|
}
|
|
734
527
|
oldPtr = STATS(c);
|
|
735
|
-
|
|
736
|
-
|
|
737
|
-
c->
|
|
528
|
+
MyMem12Cpy(ptr, oldPtr, oldNU);
|
|
529
|
+
InsertNode(p, oldPtr, i);
|
|
530
|
+
c->Stats = STATS_REF(ptr);
|
|
738
531
|
}
|
|
739
532
|
}
|
|
740
|
-
|
|
741
|
-
/* max increase of Escape_Freq is 3 here.
|
|
742
|
-
total increase of Union2.SummFreq for all symbols is less than 256 here */
|
|
743
|
-
sum += (UInt32)(unsigned)((2 * ns1 < ns) + 2 * ((unsigned)(4 * ns1 <= ns) & (sum <= 8 * ns1)));
|
|
744
|
-
/* original PPMdH uses 16-bit variable for (sum) here.
|
|
745
|
-
But (sum < 0x9000). So we don't truncate (sum) to 16-bit */
|
|
746
|
-
// sum = (UInt16)sum;
|
|
533
|
+
c->SummFreq = (UInt16)(c->SummFreq + (2 * ns1 < ns) + 2 * ((4 * ns1 <= ns) & (c->SummFreq <= 8 * ns1)));
|
|
747
534
|
}
|
|
748
535
|
else
|
|
749
536
|
{
|
|
750
|
-
|
|
751
|
-
CPpmd_State *s = (CPpmd_State*)Ppmd7_AllocUnits(p, 0);
|
|
537
|
+
CPpmd_State *s = (CPpmd_State*)AllocUnits(p, 0);
|
|
752
538
|
if (!s)
|
|
753
539
|
{
|
|
754
|
-
|
|
540
|
+
RestartModel(p);
|
|
755
541
|
return;
|
|
756
542
|
}
|
|
757
|
-
|
|
758
|
-
|
|
759
|
-
|
|
760
|
-
s->
|
|
761
|
-
|
|
762
|
-
s->
|
|
763
|
-
|
|
764
|
-
|
|
765
|
-
|
|
766
|
-
|
|
767
|
-
|
|
768
|
-
|
|
769
|
-
|
|
770
|
-
|
|
771
|
-
|
|
772
|
-
|
|
773
|
-
|
|
774
|
-
|
|
543
|
+
*s = *ONE_STATE(c);
|
|
544
|
+
c->Stats = REF(s);
|
|
545
|
+
if (s->Freq < MAX_FREQ / 4 - 1)
|
|
546
|
+
s->Freq <<= 1;
|
|
547
|
+
else
|
|
548
|
+
s->Freq = MAX_FREQ - 4;
|
|
549
|
+
c->SummFreq = (UInt16)(s->Freq + p->InitEsc + (ns > 3));
|
|
550
|
+
}
|
|
551
|
+
cf = 2 * (UInt32)p->FoundState->Freq * (c->SummFreq + 6);
|
|
552
|
+
sf = (UInt32)s0 + c->SummFreq;
|
|
553
|
+
if (cf < 6 * sf)
|
|
554
|
+
{
|
|
555
|
+
cf = 1 + (cf > sf) + (cf >= 4 * sf);
|
|
556
|
+
c->SummFreq += 3;
|
|
557
|
+
}
|
|
558
|
+
else
|
|
559
|
+
{
|
|
560
|
+
cf = 4 + (cf >= 9 * sf) + (cf >= 12 * sf) + (cf >= 15 * sf);
|
|
561
|
+
c->SummFreq = (UInt16)(c->SummFreq + cf);
|
|
775
562
|
}
|
|
776
|
-
|
|
777
563
|
{
|
|
778
564
|
CPpmd_State *s = STATS(c) + ns1;
|
|
779
|
-
|
|
780
|
-
UInt32 sf = (UInt32)s0 + sum;
|
|
565
|
+
SetSuccessor(s, successor);
|
|
781
566
|
s->Symbol = p->FoundState->Symbol;
|
|
782
|
-
c->NumStats = (UInt16)(ns1 + 1);
|
|
783
|
-
SetSuccessor(s, maxSuccessor);
|
|
784
|
-
|
|
785
|
-
if (cf < 6 * sf)
|
|
786
|
-
{
|
|
787
|
-
cf = (UInt32)1 + (cf > sf) + (cf >= 4 * sf);
|
|
788
|
-
sum += 3;
|
|
789
|
-
/* It can add (0, 1, 2) to Escape_Freq */
|
|
790
|
-
}
|
|
791
|
-
else
|
|
792
|
-
{
|
|
793
|
-
cf = (UInt32)4 + (cf >= 9 * sf) + (cf >= 12 * sf) + (cf >= 15 * sf);
|
|
794
|
-
sum += cf;
|
|
795
|
-
}
|
|
796
|
-
|
|
797
|
-
c->Union2.SummFreq = (UInt16)sum;
|
|
798
567
|
s->Freq = (Byte)cf;
|
|
568
|
+
c->NumStats = (UInt16)(ns1 + 1);
|
|
799
569
|
}
|
|
800
|
-
c = SUFFIX(c);
|
|
801
570
|
}
|
|
802
|
-
|
|
571
|
+
p->MaxContext = p->MinContext = CTX(fSuccessor);
|
|
803
572
|
}
|
|
804
573
|
|
|
805
|
-
|
|
806
|
-
|
|
807
|
-
Z7_NO_INLINE
|
|
808
|
-
static void Ppmd7_Rescale(CPpmd7 *p)
|
|
574
|
+
static void Rescale(CPpmd7 *p)
|
|
809
575
|
{
|
|
810
576
|
unsigned i, adder, sumFreq, escFreq;
|
|
811
577
|
CPpmd_State *stats = STATS(p->MinContext);
|
|
812
578
|
CPpmd_State *s = p->FoundState;
|
|
813
|
-
|
|
814
|
-
/* Sort the list by Freq */
|
|
815
|
-
if (s != stats)
|
|
816
579
|
{
|
|
817
580
|
CPpmd_State tmp = *s;
|
|
818
|
-
|
|
581
|
+
for (; s != stats; s--)
|
|
819
582
|
s[0] = s[-1];
|
|
820
|
-
while (--s != stats);
|
|
821
583
|
*s = tmp;
|
|
822
584
|
}
|
|
823
|
-
|
|
824
|
-
|
|
825
|
-
escFreq = p->MinContext->Union2.SummFreq - sumFreq;
|
|
826
|
-
|
|
827
|
-
/*
|
|
828
|
-
if (p->OrderFall == 0), adder = 0 : it's allowed to remove symbol from MAX Order context
|
|
829
|
-
if (p->OrderFall != 0), adder = 1 : it's NOT allowed to remove symbol from NON-MAX Order context
|
|
830
|
-
*/
|
|
831
|
-
|
|
585
|
+
escFreq = p->MinContext->SummFreq - s->Freq;
|
|
586
|
+
s->Freq += 4;
|
|
832
587
|
adder = (p->OrderFall != 0);
|
|
833
|
-
|
|
834
|
-
|
|
835
|
-
adder |= (p->MaxOrder == 0); // we don't remove symbols from order-0 context
|
|
836
|
-
#endif
|
|
837
|
-
|
|
838
|
-
sumFreq = (sumFreq + 4 + adder) >> 1;
|
|
839
|
-
i = (unsigned)p->MinContext->NumStats - 1;
|
|
840
|
-
s->Freq = (Byte)sumFreq;
|
|
588
|
+
s->Freq = (Byte)((s->Freq + adder) >> 1);
|
|
589
|
+
sumFreq = s->Freq;
|
|
841
590
|
|
|
591
|
+
i = p->MinContext->NumStats - 1;
|
|
842
592
|
do
|
|
843
593
|
{
|
|
844
|
-
|
|
845
|
-
|
|
846
|
-
|
|
847
|
-
|
|
848
|
-
s->Freq = (Byte)freq;
|
|
849
|
-
if (freq > s[-1].Freq)
|
|
594
|
+
escFreq -= (++s)->Freq;
|
|
595
|
+
s->Freq = (Byte)((s->Freq + adder) >> 1);
|
|
596
|
+
sumFreq += s->Freq;
|
|
597
|
+
if (s[0].Freq > s[-1].Freq)
|
|
850
598
|
{
|
|
851
|
-
CPpmd_State tmp = *s;
|
|
852
599
|
CPpmd_State *s1 = s;
|
|
600
|
+
CPpmd_State tmp = *s1;
|
|
853
601
|
do
|
|
854
|
-
{
|
|
855
602
|
s1[0] = s1[-1];
|
|
856
|
-
|
|
857
|
-
while (--s1 != stats && freq > s1[-1].Freq);
|
|
603
|
+
while (--s1 != stats && tmp.Freq > s1[-1].Freq);
|
|
858
604
|
*s1 = tmp;
|
|
859
605
|
}
|
|
860
606
|
}
|
|
@@ -862,90 +608,48 @@ static void Ppmd7_Rescale(CPpmd7 *p)
|
|
|
862
608
|
|
|
863
609
|
if (s->Freq == 0)
|
|
864
610
|
{
|
|
865
|
-
|
|
866
|
-
|
|
867
|
-
|
|
868
|
-
|
|
869
|
-
i = 0; do { i++; } while ((--s)->Freq == 0);
|
|
870
|
-
|
|
871
|
-
/* We increase (escFreq) for the number of removed symbols.
|
|
872
|
-
So we will have (0.5) increase for Escape_Freq in avarage per
|
|
873
|
-
removed symbol after Escape_Freq halving */
|
|
611
|
+
unsigned numStats = p->MinContext->NumStats;
|
|
612
|
+
unsigned n0, n1;
|
|
613
|
+
do { i++; } while ((--s)->Freq == 0);
|
|
874
614
|
escFreq += i;
|
|
875
|
-
|
|
876
|
-
|
|
877
|
-
numStatsNew = numStats - i;
|
|
878
|
-
mc->NumStats = (UInt16)(numStatsNew);
|
|
879
|
-
n0 = (numStats + 1) >> 1;
|
|
880
|
-
|
|
881
|
-
if (numStatsNew == 1)
|
|
615
|
+
p->MinContext->NumStats = (UInt16)(p->MinContext->NumStats - i);
|
|
616
|
+
if (p->MinContext->NumStats == 1)
|
|
882
617
|
{
|
|
883
|
-
|
|
884
|
-
unsigned freq = stats->Freq;
|
|
885
|
-
|
|
618
|
+
CPpmd_State tmp = *stats;
|
|
886
619
|
do
|
|
887
620
|
{
|
|
621
|
+
tmp.Freq = (Byte)(tmp.Freq - (tmp.Freq >> 1));
|
|
888
622
|
escFreq >>= 1;
|
|
889
|
-
freq = (freq + 1) >> 1;
|
|
890
623
|
}
|
|
891
624
|
while (escFreq > 1);
|
|
892
|
-
|
|
893
|
-
|
|
894
|
-
*s = *stats;
|
|
895
|
-
s->Freq = (Byte)freq; // (freq <= 260 / 4)
|
|
896
|
-
p->FoundState = s;
|
|
897
|
-
Ppmd7_InsertNode(p, stats, U2I(n0));
|
|
625
|
+
InsertNode(p, stats, U2I(((numStats + 1) >> 1)));
|
|
626
|
+
*(p->FoundState = ONE_STATE(p->MinContext)) = tmp;
|
|
898
627
|
return;
|
|
899
628
|
}
|
|
900
|
-
|
|
901
|
-
n1 = (
|
|
629
|
+
n0 = (numStats + 1) >> 1;
|
|
630
|
+
n1 = (p->MinContext->NumStats + 1) >> 1;
|
|
902
631
|
if (n0 != n1)
|
|
903
|
-
|
|
904
|
-
// p->MinContext->Union4.Stats = STATS_REF(ShrinkUnits(p, stats, n0, n1));
|
|
905
|
-
unsigned i0 = U2I(n0);
|
|
906
|
-
unsigned i1 = U2I(n1);
|
|
907
|
-
if (i0 != i1)
|
|
908
|
-
{
|
|
909
|
-
if (p->FreeList[i1] != 0)
|
|
910
|
-
{
|
|
911
|
-
void *ptr = Ppmd7_RemoveNode(p, i1);
|
|
912
|
-
p->MinContext->Union4.Stats = STATS_REF(ptr);
|
|
913
|
-
MEM_12_CPY(ptr, (const void *)stats, n1)
|
|
914
|
-
Ppmd7_InsertNode(p, stats, i0);
|
|
915
|
-
}
|
|
916
|
-
else
|
|
917
|
-
Ppmd7_SplitBlock(p, stats, i0, i1);
|
|
918
|
-
}
|
|
919
|
-
}
|
|
920
|
-
}
|
|
921
|
-
{
|
|
922
|
-
CPpmd7_Context *mc = p->MinContext;
|
|
923
|
-
mc->Union2.SummFreq = (UInt16)(sumFreq + escFreq - (escFreq >> 1));
|
|
924
|
-
// Escape_Freq halving here
|
|
925
|
-
p->FoundState = STATS(mc);
|
|
632
|
+
p->MinContext->Stats = STATS_REF(ShrinkUnits(p, stats, n0, n1));
|
|
926
633
|
}
|
|
634
|
+
p->MinContext->SummFreq = (UInt16)(sumFreq + escFreq - (escFreq >> 1));
|
|
635
|
+
p->FoundState = STATS(p->MinContext);
|
|
927
636
|
}
|
|
928
637
|
|
|
929
|
-
|
|
930
638
|
CPpmd_See *Ppmd7_MakeEscFreq(CPpmd7 *p, unsigned numMasked, UInt32 *escFreq)
|
|
931
639
|
{
|
|
932
640
|
CPpmd_See *see;
|
|
933
|
-
|
|
934
|
-
|
|
935
|
-
if (numStats != 256)
|
|
641
|
+
unsigned nonMasked = p->MinContext->NumStats - numMasked;
|
|
642
|
+
if (p->MinContext->NumStats != 256)
|
|
936
643
|
{
|
|
937
|
-
|
|
938
|
-
|
|
939
|
-
|
|
940
|
-
|
|
941
|
-
+ 4 * (unsigned)(numMasked > nonMasked) +
|
|
644
|
+
see = p->See[(unsigned)p->NS2Indx[(size_t)nonMasked - 1]] +
|
|
645
|
+
(nonMasked < (unsigned)SUFFIX(p->MinContext)->NumStats - p->MinContext->NumStats) +
|
|
646
|
+
2 * (unsigned)(p->MinContext->SummFreq < 11 * p->MinContext->NumStats) +
|
|
647
|
+
4 * (unsigned)(numMasked > nonMasked) +
|
|
942
648
|
p->HiBitsFlag;
|
|
943
649
|
{
|
|
944
|
-
|
|
945
|
-
|
|
946
|
-
|
|
947
|
-
see->Summ = (UInt16)(summ - r);
|
|
948
|
-
*escFreq = (UInt32)(r + (r == 0));
|
|
650
|
+
unsigned r = (see->Summ >> see->Shift);
|
|
651
|
+
see->Summ = (UInt16)(see->Summ - r);
|
|
652
|
+
*escFreq = r + (r == 0);
|
|
949
653
|
}
|
|
950
654
|
}
|
|
951
655
|
else
|
|
@@ -956,176 +660,53 @@ CPpmd_See *Ppmd7_MakeEscFreq(CPpmd7 *p, unsigned numMasked, UInt32 *escFreq)
|
|
|
956
660
|
return see;
|
|
957
661
|
}
|
|
958
662
|
|
|
959
|
-
|
|
960
|
-
static void Ppmd7_NextContext(CPpmd7 *p)
|
|
663
|
+
static void NextContext(CPpmd7 *p)
|
|
961
664
|
{
|
|
962
|
-
|
|
963
|
-
if (p->OrderFall == 0 && (
|
|
964
|
-
p->
|
|
665
|
+
CTX_PTR c = CTX(SUCCESSOR(p->FoundState));
|
|
666
|
+
if (p->OrderFall == 0 && (Byte *)c > p->Text)
|
|
667
|
+
p->MinContext = p->MaxContext = c;
|
|
965
668
|
else
|
|
966
|
-
|
|
669
|
+
UpdateModel(p);
|
|
967
670
|
}
|
|
968
671
|
|
|
969
|
-
|
|
970
672
|
void Ppmd7_Update1(CPpmd7 *p)
|
|
971
673
|
{
|
|
972
674
|
CPpmd_State *s = p->FoundState;
|
|
973
|
-
|
|
974
|
-
|
|
975
|
-
|
|
976
|
-
s->Freq = (Byte)freq;
|
|
977
|
-
if (freq > s[-1].Freq)
|
|
675
|
+
s->Freq += 4;
|
|
676
|
+
p->MinContext->SummFreq += 4;
|
|
677
|
+
if (s[0].Freq > s[-1].Freq)
|
|
978
678
|
{
|
|
979
|
-
|
|
679
|
+
SwapStates(&s[0], &s[-1]);
|
|
980
680
|
p->FoundState = --s;
|
|
981
|
-
if (
|
|
982
|
-
|
|
681
|
+
if (s->Freq > MAX_FREQ)
|
|
682
|
+
Rescale(p);
|
|
983
683
|
}
|
|
984
|
-
|
|
684
|
+
NextContext(p);
|
|
985
685
|
}
|
|
986
686
|
|
|
987
|
-
|
|
988
687
|
void Ppmd7_Update1_0(CPpmd7 *p)
|
|
989
688
|
{
|
|
990
|
-
|
|
991
|
-
|
|
992
|
-
|
|
993
|
-
|
|
994
|
-
|
|
995
|
-
p
|
|
996
|
-
mc->Union2.SummFreq = (UInt16)(summFreq + 4);
|
|
997
|
-
freq += 4;
|
|
998
|
-
s->Freq = (Byte)freq;
|
|
999
|
-
if (freq > MAX_FREQ)
|
|
1000
|
-
Ppmd7_Rescale(p);
|
|
1001
|
-
Ppmd7_NextContext(p);
|
|
689
|
+
p->PrevSuccess = (2 * p->FoundState->Freq > p->MinContext->SummFreq);
|
|
690
|
+
p->RunLength += p->PrevSuccess;
|
|
691
|
+
p->MinContext->SummFreq += 4;
|
|
692
|
+
if ((p->FoundState->Freq += 4) > MAX_FREQ)
|
|
693
|
+
Rescale(p);
|
|
694
|
+
NextContext(p);
|
|
1002
695
|
}
|
|
1003
696
|
|
|
1004
|
-
|
|
1005
|
-
/*
|
|
1006
697
|
void Ppmd7_UpdateBin(CPpmd7 *p)
|
|
1007
698
|
{
|
|
1008
|
-
|
|
1009
|
-
p->FoundState->Freq = (Byte)(freq + (freq < 128));
|
|
699
|
+
p->FoundState->Freq = (Byte)(p->FoundState->Freq + (p->FoundState->Freq < 128 ? 1: 0));
|
|
1010
700
|
p->PrevSuccess = 1;
|
|
1011
701
|
p->RunLength++;
|
|
1012
|
-
|
|
702
|
+
NextContext(p);
|
|
1013
703
|
}
|
|
1014
|
-
*/
|
|
1015
704
|
|
|
1016
705
|
void Ppmd7_Update2(CPpmd7 *p)
|
|
1017
706
|
{
|
|
1018
|
-
|
|
1019
|
-
|
|
1020
|
-
|
|
707
|
+
p->MinContext->SummFreq += 4;
|
|
708
|
+
if ((p->FoundState->Freq += 4) > MAX_FREQ)
|
|
709
|
+
Rescale(p);
|
|
1021
710
|
p->RunLength = p->InitRL;
|
|
1022
|
-
|
|
1023
|
-
s->Freq = (Byte)freq;
|
|
1024
|
-
if (freq > MAX_FREQ)
|
|
1025
|
-
Ppmd7_Rescale(p);
|
|
1026
|
-
Ppmd7_UpdateModel(p);
|
|
1027
|
-
}
|
|
1028
|
-
|
|
1029
|
-
|
|
1030
|
-
|
|
1031
|
-
/*
|
|
1032
|
-
PPMd Memory Map:
|
|
1033
|
-
{
|
|
1034
|
-
[ 0 ] contains subset of original raw text, that is required to create context
|
|
1035
|
-
records, Some symbols are not written, when max order context was reached
|
|
1036
|
-
[ Text ] free area
|
|
1037
|
-
[ UnitsStart ] CPpmd_State vectors and CPpmd7_Context records
|
|
1038
|
-
[ LoUnit ] free area for CPpmd_State and CPpmd7_Context items
|
|
1039
|
-
[ HiUnit ] CPpmd7_Context records
|
|
1040
|
-
[ Size ] end of array
|
|
711
|
+
UpdateModel(p);
|
|
1041
712
|
}
|
|
1042
|
-
|
|
1043
|
-
These addresses don't cross at any time.
|
|
1044
|
-
And the following condtions is true for addresses:
|
|
1045
|
-
(0 <= Text < UnitsStart <= LoUnit <= HiUnit <= Size)
|
|
1046
|
-
|
|
1047
|
-
Raw text is BYTE--aligned.
|
|
1048
|
-
the data in block [ UnitsStart ... Size ] contains 12-bytes aligned UNITs.
|
|
1049
|
-
|
|
1050
|
-
Last UNIT of array at offset (Size - 12) is root order-0 CPpmd7_Context record.
|
|
1051
|
-
The code can free UNITs memory blocks that were allocated to store CPpmd_State vectors.
|
|
1052
|
-
The code doesn't free UNITs allocated for CPpmd7_Context records.
|
|
1053
|
-
|
|
1054
|
-
The code calls Ppmd7_RestartModel(), when there is no free memory for allocation.
|
|
1055
|
-
And Ppmd7_RestartModel() changes the state to orignal start state, with full free block.
|
|
1056
|
-
|
|
1057
|
-
|
|
1058
|
-
The code allocates UNITs with the following order:
|
|
1059
|
-
|
|
1060
|
-
Allocation of 1 UNIT for Context record
|
|
1061
|
-
- from free space (HiUnit) down to (LoUnit)
|
|
1062
|
-
- from FreeList[0]
|
|
1063
|
-
- Ppmd7_AllocUnitsRare()
|
|
1064
|
-
|
|
1065
|
-
Ppmd7_AllocUnits() for CPpmd_State vectors:
|
|
1066
|
-
- from FreeList[i]
|
|
1067
|
-
- from free space (LoUnit) up to (HiUnit)
|
|
1068
|
-
- Ppmd7_AllocUnitsRare()
|
|
1069
|
-
|
|
1070
|
-
Ppmd7_AllocUnitsRare()
|
|
1071
|
-
- if (GlueCount == 0)
|
|
1072
|
-
{ Glue lists, GlueCount = 255, allocate from FreeList[i]] }
|
|
1073
|
-
- loop for all higher sized FreeList[...] lists
|
|
1074
|
-
- from (UnitsStart - Text), GlueCount--
|
|
1075
|
-
- ERROR
|
|
1076
|
-
|
|
1077
|
-
|
|
1078
|
-
Each Record with Context contains the CPpmd_State vector, where each
|
|
1079
|
-
CPpmd_State contains the link to Successor.
|
|
1080
|
-
There are 3 types of Successor:
|
|
1081
|
-
1) NULL-Successor - NULL pointer. NULL-Successor links can be stored
|
|
1082
|
-
only in 0-order Root Context Record.
|
|
1083
|
-
We use 0 value as NULL-Successor
|
|
1084
|
-
2) RAW-Successor - the link to position in raw text,
|
|
1085
|
-
that "RAW-Successor" is being created after first
|
|
1086
|
-
occurrence of new symbol for some existing context record.
|
|
1087
|
-
(RAW-Successor > 0).
|
|
1088
|
-
3) RECORD-Successor - the link to CPpmd7_Context record of (Order+1),
|
|
1089
|
-
that record is being created when we go via RAW-Successor again.
|
|
1090
|
-
|
|
1091
|
-
For any successors at any time: the following condtions are true for Successor links:
|
|
1092
|
-
(NULL-Successor < RAW-Successor < UnitsStart <= RECORD-Successor)
|
|
1093
|
-
|
|
1094
|
-
|
|
1095
|
-
---------- Symbol Frequency, SummFreq and Range in Range_Coder ----------
|
|
1096
|
-
|
|
1097
|
-
CPpmd7_Context::SummFreq = Sum(Stats[].Freq) + Escape_Freq
|
|
1098
|
-
|
|
1099
|
-
The PPMd code tries to fulfill the condition:
|
|
1100
|
-
(SummFreq <= (256 * 128 = RC::kBot))
|
|
1101
|
-
|
|
1102
|
-
We have (Sum(Stats[].Freq) <= 256 * 124), because of (MAX_FREQ = 124)
|
|
1103
|
-
So (4 = 128 - 124) is average reserve for Escape_Freq for each symbol.
|
|
1104
|
-
If (CPpmd_State::Freq) is not aligned for 4, the reserve can be 5, 6 or 7.
|
|
1105
|
-
SummFreq and Escape_Freq can be changed in Ppmd7_Rescale() and *Update*() functions.
|
|
1106
|
-
Ppmd7_Rescale() can remove symbols only from max-order contexts. So Escape_Freq can increase after multiple calls of Ppmd7_Rescale() for
|
|
1107
|
-
max-order context.
|
|
1108
|
-
|
|
1109
|
-
When the PPMd code still break (Total <= RC::Range) condition in range coder,
|
|
1110
|
-
we have two ways to resolve that problem:
|
|
1111
|
-
1) we can report error, if we want to keep compatibility with original PPMd code that has no fix for such cases.
|
|
1112
|
-
2) we can reduce (Total) value to (RC::Range) by reducing (Escape_Freq) part of (Total) value.
|
|
1113
|
-
*/
|
|
1114
|
-
|
|
1115
|
-
#undef MAX_FREQ
|
|
1116
|
-
#undef UNIT_SIZE
|
|
1117
|
-
#undef U2B
|
|
1118
|
-
#undef U2I
|
|
1119
|
-
#undef I2U
|
|
1120
|
-
#undef I2U_UInt16
|
|
1121
|
-
#undef REF
|
|
1122
|
-
#undef STATS_REF
|
|
1123
|
-
#undef CTX
|
|
1124
|
-
#undef STATS
|
|
1125
|
-
#undef ONE_STATE
|
|
1126
|
-
#undef SUFFIX
|
|
1127
|
-
#undef NODE
|
|
1128
|
-
#undef EMPTY_NODE
|
|
1129
|
-
#undef MEM_12_CPY
|
|
1130
|
-
#undef SUCCESSOR
|
|
1131
|
-
#undef SWAP_STATES
|