react-native-update 10.60.0 → 10.61.0

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.
Files changed (820) hide show
  1. package/README-CN.md +6 -0
  2. package/README.md +8 -0
  3. package/android/jni/Android.mk +2 -0
  4. package/android/jni/Application.mk +3 -1
  5. package/android/lib/arm64-v8a/librnpushy.so +0 -0
  6. package/android/lib/armeabi-v7a/librnpushy.so +0 -0
  7. package/android/lib/x86/librnpushy.so +0 -0
  8. package/android/lib/x86_64/librnpushy.so +0 -0
  9. package/android/src/main/java/cn/reactnative/modules/update/ApkInstaller.java +1 -1
  10. package/android/src/main/java/cn/reactnative/modules/update/ArchiveLimits.java +3 -2
  11. package/android/src/main/java/cn/reactnative/modules/update/BundlePreparationResult.java +2 -0
  12. package/android/src/main/java/cn/reactnative/modules/update/DownloadTask.java +102 -119
  13. package/android/src/main/java/cn/reactnative/modules/update/DownloadTaskParams.java +5 -3
  14. package/android/src/main/java/cn/reactnative/modules/update/ErrorCodes.java +5 -3
  15. package/android/src/main/java/cn/reactnative/modules/update/FlowBridge.java +7 -0
  16. package/android/src/main/java/cn/reactnative/modules/update/HttpUtils.java +0 -34
  17. package/android/src/main/java/cn/reactnative/modules/update/InstallRecord.java +3 -1
  18. package/android/src/main/java/cn/reactnative/modules/update/NativeCore.java +1 -1
  19. package/android/src/main/java/cn/reactnative/modules/update/PushyRuntime.java +23 -4
  20. package/android/src/main/java/cn/reactnative/modules/update/ReactReloadManager.java +1 -1
  21. package/android/src/main/java/cn/reactnative/modules/update/ResumePlan.java +31 -0
  22. package/android/src/main/java/cn/reactnative/modules/update/SyncCoordinator.java +397 -300
  23. package/android/src/main/java/cn/reactnative/modules/update/Texts.java +15 -1
  24. package/android/src/main/java/cn/reactnative/modules/update/Threads.java +9 -0
  25. package/android/src/main/java/cn/reactnative/modules/update/UpdateContext.java +24 -15
  26. package/android/src/main/java/cn/reactnative/modules/update/UpdateModule.java +1 -1
  27. package/android/src/main/java/cn/reactnative/modules/update/VersionScopedKeys.java +64 -0
  28. package/android/src/oldarch/cn/reactnative/modules/update/NativePushySpec.java +2 -0
  29. package/cpp/android_jni/jni_log.h +2 -3
  30. package/cpp/android_jni/jni_natives.h +14 -8
  31. package/cpp/android_jni/jni_registration.cpp +13 -0
  32. package/cpp/android_jni/resume_plan_jni.cpp +58 -0
  33. package/cpp/android_jni/update_core_android.cpp +3 -5
  34. package/cpp/android_jni/update_flow_jni.cpp +17 -0
  35. package/cpp/patch_core/archive_limits.h +5 -3
  36. package/cpp/patch_core/archive_patch_core.cpp +2 -3
  37. package/cpp/patch_core/archive_patch_core.h +2 -0
  38. package/cpp/patch_core/error_codes.h +15 -13
  39. package/cpp/patch_core/install_record.h +5 -3
  40. package/cpp/patch_core/native_texts.h +102 -0
  41. package/cpp/patch_core/resume_plan.cpp +226 -0
  42. package/cpp/patch_core/resume_plan.h +88 -0
  43. package/cpp/patch_core/state_ops.h +2 -0
  44. package/cpp/update_flow_core/native_config.cpp +5 -25
  45. package/cpp/update_flow_core/native_round.cpp +9 -14
  46. package/cpp/update_flow_core/native_round.h +7 -3
  47. package/cpp/update_flow_core/round_engine.cpp +456 -0
  48. package/cpp/update_flow_core/round_engine.h +106 -0
  49. package/cpp/update_flow_core/update_flow_core.cpp +5 -14
  50. package/harmony/pushy/src/main/cpp/CMakeLists.txt +2 -0
  51. package/harmony/pushy/src/main/cpp/PushyTurboModule.cpp +22 -20
  52. package/harmony/pushy/src/main/cpp/pushy.cpp +146 -24
  53. package/harmony/pushy/src/main/ets/ArchiveLimits.ts +9 -5
  54. package/harmony/pushy/src/main/ets/DownloadTask.ts +138 -158
  55. package/harmony/pushy/src/main/ets/DownloadTaskParams.ts +5 -3
  56. package/harmony/pushy/src/main/ets/ErrorCodes.ts +3 -2
  57. package/harmony/pushy/src/main/ets/InstallRecord.ts +3 -1
  58. package/harmony/pushy/src/main/ets/NativePatchCore.ts +35 -0
  59. package/harmony/pushy/src/main/ets/PushyFileJSBundleProvider.ets +8 -3
  60. package/harmony/pushy/src/main/ets/SyncCoordinator.ts +256 -309
  61. package/harmony/pushy/src/main/ets/Texts.ts +8 -3
  62. package/harmony/pushy/src/main/ets/UpdateContext.ts +152 -46
  63. package/harmony/pushy.har +0 -0
  64. package/ios/RCTPushy/RCTPushy+Launch.mm +5 -0
  65. package/ios/RCTPushy/RCTPushy.mm +60 -44
  66. package/ios/RCTPushy/RCTPushyCommon.h +0 -6
  67. package/ios/RCTPushy/RCTPushyConfiguration.mm +8 -10
  68. package/ios/RCTPushy/RCTPushyDownloader.mm +112 -161
  69. package/ios/RCTPushy/RCTPushyInstallRecord.mm +42 -2
  70. package/ios/RCTPushy/RCTPushyInstaller.mm +195 -152
  71. package/ios/RCTPushy/RCTPushyInternal.h +41 -0
  72. package/ios/RCTPushy/RCTPushyOrchestrator.mm +233 -265
  73. package/ios/RCTPushy/RCTPushyState.mm +70 -2
  74. package/package.json +23 -4
  75. package/src/client.ts +126 -1543
  76. package/src/clientActivation.ts +324 -0
  77. package/src/clientCheck.ts +405 -0
  78. package/src/clientDownload.ts +448 -0
  79. package/src/clientNativeConfig.ts +171 -0
  80. package/src/clientReporter.ts +398 -0
  81. package/src/clientState.ts +51 -0
  82. package/src/core.ts +4 -2
  83. package/src/endpoint.ts +22 -6
  84. package/src/error.ts +6 -4
  85. package/src/locales/en.ts +1 -1
  86. package/src/locales/zh.ts +1 -1
  87. package/src/provider.tsx +32 -20
  88. package/android/jni/HDiffPatch/.travis.yml +0 -33
  89. package/android/jni/HDiffPatch/CHANGELOG.md +0 -153
  90. package/android/jni/HDiffPatch/Makefile +0 -157
  91. package/android/jni/HDiffPatch/_atosize.h +0 -83
  92. package/android/jni/HDiffPatch/_clock_for_demo.h +0 -47
  93. package/android/jni/HDiffPatch/_dir_ignore.h +0 -191
  94. package/android/jni/HDiffPatch/builds/android_ndk_jni_mk/Android.mk +0 -37
  95. package/android/jni/HDiffPatch/builds/android_ndk_jni_mk/Application.mk +0 -7
  96. package/android/jni/HDiffPatch/builds/android_ndk_jni_mk/build_libs.bat +0 -1
  97. package/android/jni/HDiffPatch/builds/android_ndk_jni_mk/build_libs.sh +0 -1
  98. package/android/jni/HDiffPatch/builds/android_ndk_jni_mk/hpatch.c +0 -18
  99. package/android/jni/HDiffPatch/builds/android_ndk_jni_mk/hpatch.h +0 -20
  100. package/android/jni/HDiffPatch/builds/android_ndk_jni_mk/hpatch_jni.c +0 -28
  101. package/android/jni/HDiffPatch/builds/android_ndk_jni_mk/java/com/github/sisong/HPatch.java +0 -8
  102. package/android/jni/HDiffPatch/builds/codeblocks/HDiffPatch.workspace +0 -8
  103. package/android/jni/HDiffPatch/builds/codeblocks/HDiffZ.cbp +0 -219
  104. package/android/jni/HDiffPatch/builds/codeblocks/HPatchZ.cbp +0 -156
  105. package/android/jni/HDiffPatch/builds/codeblocks/unitTest.cbp +0 -65
  106. package/android/jni/HDiffPatch/builds/vc/HDiffPatch.sln +0 -105
  107. package/android/jni/HDiffPatch/builds/vc/HDiffZ.vcxproj +0 -237
  108. package/android/jni/HDiffPatch/builds/vc/HDiffZ.vcxproj.user +0 -3
  109. package/android/jni/HDiffPatch/builds/vc/HPatchZ.vcxproj +0 -318
  110. package/android/jni/HDiffPatch/builds/vc/HPatchZ.vcxproj.user +0 -3
  111. package/android/jni/HDiffPatch/builds/vc/unitTest.vcxproj +0 -182
  112. package/android/jni/HDiffPatch/builds/vc/unitTest.vcxproj.user +0 -3
  113. package/android/jni/HDiffPatch/builds/xcode/HDiffPatch.xcworkspace/contents.xcworkspacedata +0 -30
  114. package/android/jni/HDiffPatch/builds/xcode/HDiffPatch.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist +0 -8
  115. package/android/jni/HDiffPatch/builds/xcode/bestParams.xcodeproj/project.pbxproj +0 -408
  116. package/android/jni/HDiffPatch/builds/xcode/bestParams.xcodeproj/project.xcworkspace/contents.xcworkspacedata +0 -7
  117. package/android/jni/HDiffPatch/builds/xcode/hdiffz.xcodeproj/project.pbxproj +0 -573
  118. package/android/jni/HDiffPatch/builds/xcode/hdiffz.xcodeproj/project.xcworkspace/contents.xcworkspacedata +0 -7
  119. package/android/jni/HDiffPatch/builds/xcode/hdiffz.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist +0 -8
  120. package/android/jni/HDiffPatch/builds/xcode/hpatchz.xcodeproj/project.pbxproj +0 -396
  121. package/android/jni/HDiffPatch/builds/xcode/hpatchz.xcodeproj/project.xcworkspace/contents.xcworkspacedata +0 -7
  122. package/android/jni/HDiffPatch/builds/xcode/lz4.xcodeproj/project.pbxproj +0 -268
  123. package/android/jni/HDiffPatch/builds/xcode/lz4.xcodeproj/project.xcworkspace/contents.xcworkspacedata +0 -7
  124. package/android/jni/HDiffPatch/builds/xcode/lzma.xcodeproj/project.pbxproj +0 -361
  125. package/android/jni/HDiffPatch/builds/xcode/lzma.xcodeproj/project.xcworkspace/contents.xcworkspacedata +0 -7
  126. package/android/jni/HDiffPatch/builds/xcode/testHashClash.xcodeproj/project.pbxproj +0 -301
  127. package/android/jni/HDiffPatch/builds/xcode/testHashClash.xcodeproj/project.xcworkspace/contents.xcworkspacedata +0 -7
  128. package/android/jni/HDiffPatch/builds/xcode/testHashClash.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist +0 -8
  129. package/android/jni/HDiffPatch/builds/xcode/unitTest.xcodeproj/project.pbxproj +0 -411
  130. package/android/jni/HDiffPatch/builds/xcode/unitTest.xcodeproj/project.xcworkspace/contents.xcworkspacedata +0 -7
  131. package/android/jni/HDiffPatch/builds/xcode/zstd.xcodeproj/project.pbxproj +0 -504
  132. package/android/jni/HDiffPatch/builds/xcode/zstd.xcodeproj/project.xcworkspace/contents.xcworkspacedata +0 -7
  133. package/android/jni/HDiffPatch/checksum_plugin_demo.h +0 -344
  134. package/android/jni/HDiffPatch/compress_parallel.cpp +0 -166
  135. package/android/jni/HDiffPatch/compress_parallel.h +0 -59
  136. package/android/jni/HDiffPatch/compress_plugin_demo.h +0 -1152
  137. package/android/jni/HDiffPatch/dirDiffPatch/dir_diff/dir_diff.cpp +0 -797
  138. package/android/jni/HDiffPatch/dirDiffPatch/dir_diff/dir_diff.h +0 -65
  139. package/android/jni/HDiffPatch/dirDiffPatch/dir_diff/dir_diff_tools.cpp +0 -200
  140. package/android/jni/HDiffPatch/dirDiffPatch/dir_diff/dir_diff_tools.h +0 -178
  141. package/android/jni/HDiffPatch/dirDiffPatch/dir_diff/dir_manifest.cpp +0 -357
  142. package/android/jni/HDiffPatch/dirDiffPatch/dir_diff/dir_manifest.h +0 -87
  143. package/android/jni/HDiffPatch/dirDiffPatch/dir_diff/file_for_dirDiff.h +0 -151
  144. package/android/jni/HDiffPatch/dirDiffPatch/dir_patch/dir_patch.c +0 -770
  145. package/android/jni/HDiffPatch/dirDiffPatch/dir_patch/dir_patch.h +0 -236
  146. package/android/jni/HDiffPatch/dirDiffPatch/dir_patch/dir_patch_private.h +0 -47
  147. package/android/jni/HDiffPatch/dirDiffPatch/dir_patch/dir_patch_tools.c +0 -112
  148. package/android/jni/HDiffPatch/dirDiffPatch/dir_patch/dir_patch_tools.h +0 -53
  149. package/android/jni/HDiffPatch/dirDiffPatch/dir_patch/new_dir_output.c +0 -331
  150. package/android/jni/HDiffPatch/dirDiffPatch/dir_patch/new_dir_output.h +0 -144
  151. package/android/jni/HDiffPatch/dirDiffPatch/dir_patch/new_stream.c +0 -176
  152. package/android/jni/HDiffPatch/dirDiffPatch/dir_patch/new_stream.h +0 -84
  153. package/android/jni/HDiffPatch/dirDiffPatch/dir_patch/ref_stream.c +0 -146
  154. package/android/jni/HDiffPatch/dirDiffPatch/dir_patch/ref_stream.h +0 -61
  155. package/android/jni/HDiffPatch/dirDiffPatch/dir_patch/res_handle_limit.c +0 -152
  156. package/android/jni/HDiffPatch/dirDiffPatch/dir_patch/res_handle_limit.h +0 -76
  157. package/android/jni/HDiffPatch/hdiffz.cpp +0 -1570
  158. package/android/jni/HDiffPatch/hpatch_dir_listener.h +0 -290
  159. package/android/jni/HDiffPatch/hpatchz.c +0 -1221
  160. package/android/jni/HDiffPatch/libHDiffPatch/HDiff/diff.cpp +0 -1025
  161. package/android/jni/HDiffPatch/libHDiffPatch/HDiff/diff.h +0 -116
  162. package/android/jni/HDiffPatch/libHDiffPatch/HDiff/diff_types.h +0 -72
  163. package/android/jni/HDiffPatch/libHDiffPatch/HDiff/private_diff/bytes_rle.cpp +0 -213
  164. package/android/jni/HDiffPatch/libHDiffPatch/HDiff/private_diff/bytes_rle.h +0 -63
  165. package/android/jni/HDiffPatch/libHDiffPatch/HDiff/private_diff/compress_detect.cpp +0 -170
  166. package/android/jni/HDiffPatch/libHDiffPatch/HDiff/private_diff/compress_detect.h +0 -86
  167. package/android/jni/HDiffPatch/libHDiffPatch/HDiff/private_diff/libdivsufsort/config.h +0 -89
  168. package/android/jni/HDiffPatch/libHDiffPatch/HDiff/private_diff/libdivsufsort/divsufsort.c +0 -13
  169. package/android/jni/HDiffPatch/libHDiffPatch/HDiff/private_diff/libdivsufsort/divsufsort.c.inc.h +0 -398
  170. package/android/jni/HDiffPatch/libHDiffPatch/HDiff/private_diff/libdivsufsort/divsufsort.h +0 -194
  171. package/android/jni/HDiffPatch/libHDiffPatch/HDiff/private_diff/libdivsufsort/divsufsort64.c +0 -13
  172. package/android/jni/HDiffPatch/libHDiffPatch/HDiff/private_diff/libdivsufsort/divsufsort64.h +0 -204
  173. package/android/jni/HDiffPatch/libHDiffPatch/HDiff/private_diff/libdivsufsort/divsufsort_private.h +0 -207
  174. package/android/jni/HDiffPatch/libHDiffPatch/HDiff/private_diff/libdivsufsort/sssort.c.inc.h +0 -815
  175. package/android/jni/HDiffPatch/libHDiffPatch/HDiff/private_diff/libdivsufsort/trsort.c.inc.h +0 -586
  176. package/android/jni/HDiffPatch/libHDiffPatch/HDiff/private_diff/libdivsufsort/utils.c.inc.h +0 -381
  177. package/android/jni/HDiffPatch/libHDiffPatch/HDiff/private_diff/limit_mem_diff/adler_roll.c +0 -352
  178. package/android/jni/HDiffPatch/libHDiffPatch/HDiff/private_diff/limit_mem_diff/adler_roll.h +0 -137
  179. package/android/jni/HDiffPatch/libHDiffPatch/HDiff/private_diff/limit_mem_diff/bloom_filter.h +0 -137
  180. package/android/jni/HDiffPatch/libHDiffPatch/HDiff/private_diff/limit_mem_diff/covers.h +0 -70
  181. package/android/jni/HDiffPatch/libHDiffPatch/HDiff/private_diff/limit_mem_diff/digest_matcher.cpp +0 -628
  182. package/android/jni/HDiffPatch/libHDiffPatch/HDiff/private_diff/limit_mem_diff/digest_matcher.h +0 -87
  183. package/android/jni/HDiffPatch/libHDiffPatch/HDiff/private_diff/limit_mem_diff/stream_serialize.cpp +0 -363
  184. package/android/jni/HDiffPatch/libHDiffPatch/HDiff/private_diff/limit_mem_diff/stream_serialize.h +0 -139
  185. package/android/jni/HDiffPatch/libHDiffPatch/HDiff/private_diff/mem_buf.h +0 -68
  186. package/android/jni/HDiffPatch/libHDiffPatch/HDiff/private_diff/pack_uint.h +0 -115
  187. package/android/jni/HDiffPatch/libHDiffPatch/HDiff/private_diff/suffix_string.cpp +0 -342
  188. package/android/jni/HDiffPatch/libHDiffPatch/HDiff/private_diff/suffix_string.h +0 -94
  189. package/android/jni/HDiffPatch/libHDiffPatch/HPatch/checksum_plugin.h +0 -52
  190. package/android/jni/HDiffPatch/libParallel/parallel_channel.cpp +0 -174
  191. package/android/jni/HDiffPatch/libParallel/parallel_channel.h +0 -73
  192. package/android/jni/HDiffPatch/libParallel/parallel_import.cpp +0 -367
  193. package/android/jni/HDiffPatch/libParallel/parallel_import.h +0 -92
  194. package/android/jni/lzma/Asm/arm/7zCrcOpt.asm +0 -100
  195. package/android/jni/lzma/Asm/x86/7zAsm.asm +0 -147
  196. package/android/jni/lzma/Asm/x86/7zCrcOpt.asm +0 -147
  197. package/android/jni/lzma/Asm/x86/AesOpt.asm +0 -237
  198. package/android/jni/lzma/Asm/x86/LzmaDecOpt.asm +0 -1258
  199. package/android/jni/lzma/Asm/x86/XzCrc64Opt.asm +0 -205
  200. package/android/jni/lzma/C/7z.h +0 -202
  201. package/android/jni/lzma/C/7zAlloc.c +0 -80
  202. package/android/jni/lzma/C/7zAlloc.h +0 -19
  203. package/android/jni/lzma/C/7zArcIn.c +0 -1771
  204. package/android/jni/lzma/C/7zBuf.c +0 -36
  205. package/android/jni/lzma/C/7zBuf.h +0 -35
  206. package/android/jni/lzma/C/7zBuf2.c +0 -52
  207. package/android/jni/lzma/C/7zCrc.c +0 -128
  208. package/android/jni/lzma/C/7zCrc.h +0 -25
  209. package/android/jni/lzma/C/7zCrcOpt.c +0 -115
  210. package/android/jni/lzma/C/7zDec.c +0 -591
  211. package/android/jni/lzma/C/7zFile.c +0 -286
  212. package/android/jni/lzma/C/7zFile.h +0 -83
  213. package/android/jni/lzma/C/7zStream.c +0 -176
  214. package/android/jni/lzma/C/7zVersion.h +0 -27
  215. package/android/jni/lzma/C/7zVersion.rc +0 -55
  216. package/android/jni/lzma/C/Aes.c +0 -306
  217. package/android/jni/lzma/C/Aes.h +0 -38
  218. package/android/jni/lzma/C/AesOpt.c +0 -184
  219. package/android/jni/lzma/C/Alloc.c +0 -455
  220. package/android/jni/lzma/C/Alloc.h +0 -51
  221. package/android/jni/lzma/C/Bcj2.c +0 -257
  222. package/android/jni/lzma/C/Bcj2.h +0 -146
  223. package/android/jni/lzma/C/Bcj2Enc.c +0 -311
  224. package/android/jni/lzma/C/Bra.c +0 -230
  225. package/android/jni/lzma/C/Bra.h +0 -64
  226. package/android/jni/lzma/C/Bra86.c +0 -82
  227. package/android/jni/lzma/C/BraIA64.c +0 -53
  228. package/android/jni/lzma/C/CpuArch.c +0 -218
  229. package/android/jni/lzma/C/CpuArch.h +0 -336
  230. package/android/jni/lzma/C/Delta.c +0 -64
  231. package/android/jni/lzma/C/Delta.h +0 -19
  232. package/android/jni/lzma/C/DllSecur.c +0 -108
  233. package/android/jni/lzma/C/DllSecur.h +0 -20
  234. package/android/jni/lzma/C/LzFind.c +0 -1127
  235. package/android/jni/lzma/C/LzFind.h +0 -121
  236. package/android/jni/lzma/C/LzFindMt.c +0 -853
  237. package/android/jni/lzma/C/LzFindMt.h +0 -101
  238. package/android/jni/lzma/C/LzHash.h +0 -57
  239. package/android/jni/lzma/C/Lzma2DecMt.c +0 -1082
  240. package/android/jni/lzma/C/Lzma2DecMt.h +0 -79
  241. package/android/jni/lzma/C/Lzma2Enc.c +0 -803
  242. package/android/jni/lzma/C/Lzma2Enc.h +0 -55
  243. package/android/jni/lzma/C/Lzma86.h +0 -111
  244. package/android/jni/lzma/C/Lzma86Dec.c +0 -54
  245. package/android/jni/lzma/C/Lzma86Enc.c +0 -106
  246. package/android/jni/lzma/C/LzmaEnc.c +0 -2976
  247. package/android/jni/lzma/C/LzmaEnc.h +0 -76
  248. package/android/jni/lzma/C/LzmaLib.c +0 -40
  249. package/android/jni/lzma/C/LzmaLib.h +0 -131
  250. package/android/jni/lzma/C/MtCoder.c +0 -601
  251. package/android/jni/lzma/C/MtCoder.h +0 -141
  252. package/android/jni/lzma/C/MtDec.c +0 -1138
  253. package/android/jni/lzma/C/MtDec.h +0 -201
  254. package/android/jni/lzma/C/Ppmd.h +0 -85
  255. package/android/jni/lzma/C/Ppmd7.c +0 -712
  256. package/android/jni/lzma/C/Ppmd7.h +0 -142
  257. package/android/jni/lzma/C/Ppmd7Dec.c +0 -191
  258. package/android/jni/lzma/C/Ppmd7Enc.c +0 -187
  259. package/android/jni/lzma/C/RotateDefs.h +0 -30
  260. package/android/jni/lzma/C/Sha256.c +0 -248
  261. package/android/jni/lzma/C/Sha256.h +0 -26
  262. package/android/jni/lzma/C/Sort.c +0 -141
  263. package/android/jni/lzma/C/Sort.h +0 -18
  264. package/android/jni/lzma/C/Threads.c +0 -95
  265. package/android/jni/lzma/C/Threads.h +0 -70
  266. package/android/jni/lzma/C/ThreadsP.c +0 -396
  267. package/android/jni/lzma/C/ThreadsP.h +0 -31
  268. package/android/jni/lzma/C/Util/7z/7z.dsp +0 -241
  269. package/android/jni/lzma/C/Util/7z/7z.dsw +0 -29
  270. package/android/jni/lzma/C/Util/7z/7zMain.c +0 -686
  271. package/android/jni/lzma/C/Util/7z/Precomp.c +0 -4
  272. package/android/jni/lzma/C/Util/7z/Precomp.h +0 -10
  273. package/android/jni/lzma/C/Util/7z/makefile +0 -40
  274. package/android/jni/lzma/C/Util/7z/makefile.gcc +0 -75
  275. package/android/jni/lzma/C/Util/Lzma/LzmaUtil.c +0 -258
  276. package/android/jni/lzma/C/Util/Lzma/LzmaUtil.dsp +0 -168
  277. package/android/jni/lzma/C/Util/Lzma/LzmaUtil.dsw +0 -29
  278. package/android/jni/lzma/C/Util/Lzma/makefile +0 -28
  279. package/android/jni/lzma/C/Util/Lzma/makefile.gcc +0 -44
  280. package/android/jni/lzma/C/Util/LzmaLib/LzmaLib.def +0 -4
  281. package/android/jni/lzma/C/Util/LzmaLib/LzmaLib.dsp +0 -178
  282. package/android/jni/lzma/C/Util/LzmaLib/LzmaLib.dsw +0 -29
  283. package/android/jni/lzma/C/Util/LzmaLib/LzmaLibExports.c +0 -14
  284. package/android/jni/lzma/C/Util/LzmaLib/makefile +0 -34
  285. package/android/jni/lzma/C/Util/LzmaLib/resource.rc +0 -3
  286. package/android/jni/lzma/C/Util/SfxSetup/Precomp.c +0 -4
  287. package/android/jni/lzma/C/Util/SfxSetup/Precomp.h +0 -10
  288. package/android/jni/lzma/C/Util/SfxSetup/SfxSetup.c +0 -640
  289. package/android/jni/lzma/C/Util/SfxSetup/SfxSetup.dsp +0 -231
  290. package/android/jni/lzma/C/Util/SfxSetup/SfxSetup.dsw +0 -29
  291. package/android/jni/lzma/C/Util/SfxSetup/makefile +0 -37
  292. package/android/jni/lzma/C/Util/SfxSetup/makefile_con +0 -38
  293. package/android/jni/lzma/C/Util/SfxSetup/resource.rc +0 -5
  294. package/android/jni/lzma/C/Util/SfxSetup/setup.ico +0 -0
  295. package/android/jni/lzma/C/Xz.c +0 -90
  296. package/android/jni/lzma/C/Xz.h +0 -460
  297. package/android/jni/lzma/C/XzCrc64.c +0 -86
  298. package/android/jni/lzma/C/XzCrc64.h +0 -26
  299. package/android/jni/lzma/C/XzCrc64Opt.c +0 -69
  300. package/android/jni/lzma/C/XzDec.c +0 -2766
  301. package/android/jni/lzma/C/XzEnc.c +0 -1329
  302. package/android/jni/lzma/C/XzEnc.h +0 -60
  303. package/android/jni/lzma/C/XzIn.c +0 -319
  304. package/android/jni/lzma/CPP/7zip/7zip.mak +0 -240
  305. package/android/jni/lzma/CPP/7zip/Aes.mak +0 -7
  306. package/android/jni/lzma/CPP/7zip/Archive/7z/7zCompressionMode.cpp +0 -3
  307. package/android/jni/lzma/CPP/7zip/Archive/7z/7zCompressionMode.h +0 -76
  308. package/android/jni/lzma/CPP/7zip/Archive/7z/7zDecode.cpp +0 -569
  309. package/android/jni/lzma/CPP/7zip/Archive/7z/7zDecode.h +0 -70
  310. package/android/jni/lzma/CPP/7zip/Archive/7z/7zEncode.cpp +0 -678
  311. package/android/jni/lzma/CPP/7zip/Archive/7z/7zEncode.h +0 -92
  312. package/android/jni/lzma/CPP/7zip/Archive/7z/7zExtract.cpp +0 -423
  313. package/android/jni/lzma/CPP/7zip/Archive/7z/7zFolderInStream.cpp +0 -139
  314. package/android/jni/lzma/CPP/7zip/Archive/7z/7zFolderInStream.h +0 -61
  315. package/android/jni/lzma/CPP/7zip/Archive/7z/7zHandler.cpp +0 -763
  316. package/android/jni/lzma/CPP/7zip/Archive/7z/7zHandler.h +0 -181
  317. package/android/jni/lzma/CPP/7zip/Archive/7z/7zHandlerOut.cpp +0 -942
  318. package/android/jni/lzma/CPP/7zip/Archive/7z/7zHeader.cpp +0 -19
  319. package/android/jni/lzma/CPP/7zip/Archive/7z/7zHeader.h +0 -148
  320. package/android/jni/lzma/CPP/7zip/Archive/7z/7zIn.cpp +0 -1666
  321. package/android/jni/lzma/CPP/7zip/Archive/7z/7zIn.h +0 -445
  322. package/android/jni/lzma/CPP/7zip/Archive/7z/7zItem.h +0 -202
  323. package/android/jni/lzma/CPP/7zip/Archive/7z/7zOut.cpp +0 -901
  324. package/android/jni/lzma/CPP/7zip/Archive/7z/7zOut.h +0 -335
  325. package/android/jni/lzma/CPP/7zip/Archive/7z/7zProperties.cpp +0 -174
  326. package/android/jni/lzma/CPP/7zip/Archive/7z/7zProperties.h +0 -22
  327. package/android/jni/lzma/CPP/7zip/Archive/7z/7zRegister.cpp +0 -21
  328. package/android/jni/lzma/CPP/7zip/Archive/7z/7zSpecStream.cpp +0 -22
  329. package/android/jni/lzma/CPP/7zip/Archive/7z/7zSpecStream.h +0 -35
  330. package/android/jni/lzma/CPP/7zip/Archive/7z/7zUpdate.cpp +0 -2500
  331. package/android/jni/lzma/CPP/7zip/Archive/7z/7zUpdate.h +0 -139
  332. package/android/jni/lzma/CPP/7zip/Archive/7z/StdAfx.cpp +0 -3
  333. package/android/jni/lzma/CPP/7zip/Archive/7z/StdAfx.h +0 -8
  334. package/android/jni/lzma/CPP/7zip/Archive/Archive.def +0 -12
  335. package/android/jni/lzma/CPP/7zip/Archive/Archive2.def +0 -19
  336. package/android/jni/lzma/CPP/7zip/Archive/ArchiveExports.cpp +0 -151
  337. package/android/jni/lzma/CPP/7zip/Archive/Common/CoderMixer2.cpp +0 -1125
  338. package/android/jni/lzma/CPP/7zip/Archive/Common/CoderMixer2.h +0 -447
  339. package/android/jni/lzma/CPP/7zip/Archive/Common/DummyOutStream.cpp +0 -17
  340. package/android/jni/lzma/CPP/7zip/Archive/Common/DummyOutStream.h +0 -25
  341. package/android/jni/lzma/CPP/7zip/Archive/Common/HandlerOut.cpp +0 -232
  342. package/android/jni/lzma/CPP/7zip/Archive/Common/HandlerOut.h +0 -110
  343. package/android/jni/lzma/CPP/7zip/Archive/Common/InStreamWithCRC.cpp +0 -46
  344. package/android/jni/lzma/CPP/7zip/Archive/Common/InStreamWithCRC.h +0 -67
  345. package/android/jni/lzma/CPP/7zip/Archive/Common/ItemNameUtils.cpp +0 -88
  346. package/android/jni/lzma/CPP/7zip/Archive/Common/ItemNameUtils.h +0 -28
  347. package/android/jni/lzma/CPP/7zip/Archive/Common/MultiStream.cpp +0 -191
  348. package/android/jni/lzma/CPP/7zip/Archive/Common/MultiStream.h +0 -89
  349. package/android/jni/lzma/CPP/7zip/Archive/Common/OutStreamWithCRC.cpp +0 -18
  350. package/android/jni/lzma/CPP/7zip/Archive/Common/OutStreamWithCRC.h +0 -37
  351. package/android/jni/lzma/CPP/7zip/Archive/Common/ParseProperties.cpp +0 -3
  352. package/android/jni/lzma/CPP/7zip/Archive/Common/ParseProperties.h +0 -6
  353. package/android/jni/lzma/CPP/7zip/Archive/Common/StdAfx.h +0 -8
  354. package/android/jni/lzma/CPP/7zip/Archive/DllExports2.cpp +0 -122
  355. package/android/jni/lzma/CPP/7zip/Archive/IArchive.h +0 -608
  356. package/android/jni/lzma/CPP/7zip/Archive/Icons/7z.ico +0 -0
  357. package/android/jni/lzma/CPP/7zip/Archive/LzmaHandler.cpp +0 -629
  358. package/android/jni/lzma/CPP/7zip/Archive/SplitHandler.cpp +0 -359
  359. package/android/jni/lzma/CPP/7zip/Archive/StdAfx.h +0 -8
  360. package/android/jni/lzma/CPP/7zip/Archive/XzHandler.cpp +0 -1308
  361. package/android/jni/lzma/CPP/7zip/Archive/XzHandler.h +0 -11
  362. package/android/jni/lzma/CPP/7zip/Asm.mak +0 -9
  363. package/android/jni/lzma/CPP/7zip/Bundles/Alone7z/Alone.dsp +0 -1910
  364. package/android/jni/lzma/CPP/7zip/Bundles/Alone7z/Alone.dsw +0 -29
  365. package/android/jni/lzma/CPP/7zip/Bundles/Alone7z/StdAfx.cpp +0 -3
  366. package/android/jni/lzma/CPP/7zip/Bundles/Alone7z/StdAfx.h +0 -8
  367. package/android/jni/lzma/CPP/7zip/Bundles/Alone7z/makefile +0 -154
  368. package/android/jni/lzma/CPP/7zip/Bundles/Alone7z/resource.rc +0 -7
  369. package/android/jni/lzma/CPP/7zip/Bundles/Format7zExtractR/StdAfx.cpp +0 -3
  370. package/android/jni/lzma/CPP/7zip/Bundles/Format7zExtractR/StdAfx.h +0 -8
  371. package/android/jni/lzma/CPP/7zip/Bundles/Format7zExtractR/makefile +0 -96
  372. package/android/jni/lzma/CPP/7zip/Bundles/Format7zExtractR/resource.rc +0 -5
  373. package/android/jni/lzma/CPP/7zip/Bundles/Format7zR/StdAfx.cpp +0 -3
  374. package/android/jni/lzma/CPP/7zip/Bundles/Format7zR/StdAfx.h +0 -8
  375. package/android/jni/lzma/CPP/7zip/Bundles/Format7zR/makefile +0 -116
  376. package/android/jni/lzma/CPP/7zip/Bundles/Format7zR/resource.rc +0 -5
  377. package/android/jni/lzma/CPP/7zip/Bundles/LzmaCon/LzmaAlone.cpp +0 -799
  378. package/android/jni/lzma/CPP/7zip/Bundles/LzmaCon/LzmaCon.dsp +0 -477
  379. package/android/jni/lzma/CPP/7zip/Bundles/LzmaCon/LzmaCon.dsw +0 -29
  380. package/android/jni/lzma/CPP/7zip/Bundles/LzmaCon/StdAfx.cpp +0 -3
  381. package/android/jni/lzma/CPP/7zip/Bundles/LzmaCon/StdAfx.h +0 -8
  382. package/android/jni/lzma/CPP/7zip/Bundles/LzmaCon/makefile +0 -59
  383. package/android/jni/lzma/CPP/7zip/Bundles/LzmaCon/makefile.gcc +0 -195
  384. package/android/jni/lzma/CPP/7zip/Bundles/LzmaCon/resource.rc +0 -3
  385. package/android/jni/lzma/CPP/7zip/Bundles/LzmaSpec/LzmaSpec.cpp +0 -715
  386. package/android/jni/lzma/CPP/7zip/Bundles/SFXCon/7z.ico +0 -0
  387. package/android/jni/lzma/CPP/7zip/Bundles/SFXCon/SFXCon.dsp +0 -912
  388. package/android/jni/lzma/CPP/7zip/Bundles/SFXCon/SFXCon.dsw +0 -29
  389. package/android/jni/lzma/CPP/7zip/Bundles/SFXCon/SfxCon.cpp +0 -482
  390. package/android/jni/lzma/CPP/7zip/Bundles/SFXCon/StdAfx.cpp +0 -3
  391. package/android/jni/lzma/CPP/7zip/Bundles/SFXCon/StdAfx.h +0 -8
  392. package/android/jni/lzma/CPP/7zip/Bundles/SFXCon/makefile +0 -134
  393. package/android/jni/lzma/CPP/7zip/Bundles/SFXCon/resource.rc +0 -5
  394. package/android/jni/lzma/CPP/7zip/Bundles/SFXSetup/ExtractCallbackSfx.cpp +0 -246
  395. package/android/jni/lzma/CPP/7zip/Bundles/SFXSetup/ExtractCallbackSfx.h +0 -86
  396. package/android/jni/lzma/CPP/7zip/Bundles/SFXSetup/ExtractEngine.cpp +0 -137
  397. package/android/jni/lzma/CPP/7zip/Bundles/SFXSetup/ExtractEngine.h +0 -11
  398. package/android/jni/lzma/CPP/7zip/Bundles/SFXSetup/SFXSetup.dsp +0 -803
  399. package/android/jni/lzma/CPP/7zip/Bundles/SFXSetup/SFXSetup.dsw +0 -29
  400. package/android/jni/lzma/CPP/7zip/Bundles/SFXSetup/SfxSetup.cpp +0 -364
  401. package/android/jni/lzma/CPP/7zip/Bundles/SFXSetup/StdAfx.cpp +0 -3
  402. package/android/jni/lzma/CPP/7zip/Bundles/SFXSetup/StdAfx.h +0 -13
  403. package/android/jni/lzma/CPP/7zip/Bundles/SFXSetup/makefile +0 -117
  404. package/android/jni/lzma/CPP/7zip/Bundles/SFXSetup/resource.h +0 -6
  405. package/android/jni/lzma/CPP/7zip/Bundles/SFXSetup/resource.rc +0 -16
  406. package/android/jni/lzma/CPP/7zip/Bundles/SFXSetup/setup.ico +0 -0
  407. package/android/jni/lzma/CPP/7zip/Bundles/SFXWin/7z.ico +0 -0
  408. package/android/jni/lzma/CPP/7zip/Bundles/SFXWin/SFXWin.dsp +0 -988
  409. package/android/jni/lzma/CPP/7zip/Bundles/SFXWin/SFXWin.dsw +0 -29
  410. package/android/jni/lzma/CPP/7zip/Bundles/SFXWin/SfxWin.cpp +0 -241
  411. package/android/jni/lzma/CPP/7zip/Bundles/SFXWin/StdAfx.cpp +0 -3
  412. package/android/jni/lzma/CPP/7zip/Bundles/SFXWin/StdAfx.h +0 -14
  413. package/android/jni/lzma/CPP/7zip/Bundles/SFXWin/makefile +0 -153
  414. package/android/jni/lzma/CPP/7zip/Bundles/SFXWin/resource.h +0 -1
  415. package/android/jni/lzma/CPP/7zip/Bundles/SFXWin/resource.rc +0 -50
  416. package/android/jni/lzma/CPP/7zip/Common/CWrappers.cpp +0 -250
  417. package/android/jni/lzma/CPP/7zip/Common/CWrappers.h +0 -120
  418. package/android/jni/lzma/CPP/7zip/Common/CreateCoder.cpp +0 -536
  419. package/android/jni/lzma/CPP/7zip/Common/CreateCoder.h +0 -192
  420. package/android/jni/lzma/CPP/7zip/Common/FilePathAutoRename.cpp +0 -46
  421. package/android/jni/lzma/CPP/7zip/Common/FilePathAutoRename.h +0 -10
  422. package/android/jni/lzma/CPP/7zip/Common/FileStreams.cpp +0 -475
  423. package/android/jni/lzma/CPP/7zip/Common/FileStreams.h +0 -166
  424. package/android/jni/lzma/CPP/7zip/Common/FilterCoder.cpp +0 -435
  425. package/android/jni/lzma/CPP/7zip/Common/FilterCoder.h +0 -205
  426. package/android/jni/lzma/CPP/7zip/Common/InBuffer.cpp +0 -163
  427. package/android/jni/lzma/CPP/7zip/Common/InBuffer.h +0 -92
  428. package/android/jni/lzma/CPP/7zip/Common/InOutTempBuffer.cpp +0 -127
  429. package/android/jni/lzma/CPP/7zip/Common/InOutTempBuffer.h +0 -48
  430. package/android/jni/lzma/CPP/7zip/Common/LimitedStreams.cpp +0 -367
  431. package/android/jni/lzma/CPP/7zip/Common/LimitedStreams.h +0 -252
  432. package/android/jni/lzma/CPP/7zip/Common/LockedStream.cpp +0 -3
  433. package/android/jni/lzma/CPP/7zip/Common/LockedStream.h +0 -6
  434. package/android/jni/lzma/CPP/7zip/Common/MethodId.cpp +0 -3
  435. package/android/jni/lzma/CPP/7zip/Common/MethodId.h +0 -10
  436. package/android/jni/lzma/CPP/7zip/Common/MethodProps.cpp +0 -509
  437. package/android/jni/lzma/CPP/7zip/Common/MethodProps.h +0 -264
  438. package/android/jni/lzma/CPP/7zip/Common/OffsetStream.cpp +0 -39
  439. package/android/jni/lzma/CPP/7zip/Common/OffsetStream.h +0 -26
  440. package/android/jni/lzma/CPP/7zip/Common/OutBuffer.cpp +0 -111
  441. package/android/jni/lzma/CPP/7zip/Common/OutBuffer.h +0 -66
  442. package/android/jni/lzma/CPP/7zip/Common/ProgressUtils.cpp +0 -51
  443. package/android/jni/lzma/CPP/7zip/Common/ProgressUtils.h +0 -35
  444. package/android/jni/lzma/CPP/7zip/Common/PropId.cpp +0 -108
  445. package/android/jni/lzma/CPP/7zip/Common/RegisterArc.h +0 -78
  446. package/android/jni/lzma/CPP/7zip/Common/RegisterCodec.h +0 -106
  447. package/android/jni/lzma/CPP/7zip/Common/StdAfx.h +0 -8
  448. package/android/jni/lzma/CPP/7zip/Common/StreamBinder.cpp +0 -156
  449. package/android/jni/lzma/CPP/7zip/Common/StreamBinder.h +0 -60
  450. package/android/jni/lzma/CPP/7zip/Common/StreamObjects.cpp +0 -285
  451. package/android/jni/lzma/CPP/7zip/Common/StreamObjects.h +0 -157
  452. package/android/jni/lzma/CPP/7zip/Common/StreamUtils.cpp +0 -56
  453. package/android/jni/lzma/CPP/7zip/Common/StreamUtils.h +0 -13
  454. package/android/jni/lzma/CPP/7zip/Common/UniqBlocks.cpp +0 -57
  455. package/android/jni/lzma/CPP/7zip/Common/UniqBlocks.h +0 -26
  456. package/android/jni/lzma/CPP/7zip/Common/VirtThread.cpp +0 -48
  457. package/android/jni/lzma/CPP/7zip/Common/VirtThread.h +0 -24
  458. package/android/jni/lzma/CPP/7zip/Compress/Bcj2Coder.cpp +0 -666
  459. package/android/jni/lzma/CPP/7zip/Compress/Bcj2Coder.h +0 -120
  460. package/android/jni/lzma/CPP/7zip/Compress/Bcj2Register.cpp +0 -24
  461. package/android/jni/lzma/CPP/7zip/Compress/BcjCoder.cpp +0 -24
  462. package/android/jni/lzma/CPP/7zip/Compress/BcjCoder.h +0 -31
  463. package/android/jni/lzma/CPP/7zip/Compress/BcjRegister.cpp +0 -17
  464. package/android/jni/lzma/CPP/7zip/Compress/BranchMisc.cpp +0 -23
  465. package/android/jni/lzma/CPP/7zip/Compress/BranchMisc.h +0 -35
  466. package/android/jni/lzma/CPP/7zip/Compress/BranchRegister.cpp +0 -41
  467. package/android/jni/lzma/CPP/7zip/Compress/ByteSwap.cpp +0 -92
  468. package/android/jni/lzma/CPP/7zip/Compress/CodecExports.cpp +0 -344
  469. package/android/jni/lzma/CPP/7zip/Compress/CopyCoder.cpp +0 -120
  470. package/android/jni/lzma/CPP/7zip/Compress/CopyCoder.h +0 -49
  471. package/android/jni/lzma/CPP/7zip/Compress/CopyRegister.cpp +0 -15
  472. package/android/jni/lzma/CPP/7zip/Compress/DeltaFilter.cpp +0 -128
  473. package/android/jni/lzma/CPP/7zip/Compress/Lzma2Decoder.cpp +0 -265
  474. package/android/jni/lzma/CPP/7zip/Compress/Lzma2Decoder.h +0 -96
  475. package/android/jni/lzma/CPP/7zip/Compress/Lzma2Encoder.cpp +0 -122
  476. package/android/jni/lzma/CPP/7zip/Compress/Lzma2Encoder.h +0 -42
  477. package/android/jni/lzma/CPP/7zip/Compress/Lzma2Register.cpp +0 -22
  478. package/android/jni/lzma/CPP/7zip/Compress/LzmaDecoder.cpp +0 -343
  479. package/android/jni/lzma/CPP/7zip/Compress/LzmaDecoder.h +0 -113
  480. package/android/jni/lzma/CPP/7zip/Compress/LzmaEncoder.cpp +0 -182
  481. package/android/jni/lzma/CPP/7zip/Compress/LzmaEncoder.h +0 -46
  482. package/android/jni/lzma/CPP/7zip/Compress/LzmaRegister.cpp +0 -22
  483. package/android/jni/lzma/CPP/7zip/Compress/PpmdDecoder.cpp +0 -170
  484. package/android/jni/lzma/CPP/7zip/Compress/PpmdDecoder.h +0 -86
  485. package/android/jni/lzma/CPP/7zip/Compress/PpmdEncoder.cpp +0 -152
  486. package/android/jni/lzma/CPP/7zip/Compress/PpmdEncoder.h +0 -58
  487. package/android/jni/lzma/CPP/7zip/Compress/PpmdRegister.cpp +0 -22
  488. package/android/jni/lzma/CPP/7zip/Compress/StdAfx.h +0 -8
  489. package/android/jni/lzma/CPP/7zip/Compress/XzDecoder.cpp +0 -150
  490. package/android/jni/lzma/CPP/7zip/Compress/XzDecoder.h +0 -92
  491. package/android/jni/lzma/CPP/7zip/Compress/XzEncoder.cpp +0 -245
  492. package/android/jni/lzma/CPP/7zip/Compress/XzEncoder.h +0 -46
  493. package/android/jni/lzma/CPP/7zip/Crc.mak +0 -8
  494. package/android/jni/lzma/CPP/7zip/Crc64.mak +0 -8
  495. package/android/jni/lzma/CPP/7zip/Crypto/7zAes.cpp +0 -280
  496. package/android/jni/lzma/CPP/7zip/Crypto/7zAes.h +0 -118
  497. package/android/jni/lzma/CPP/7zip/Crypto/7zAesRegister.cpp +0 -17
  498. package/android/jni/lzma/CPP/7zip/Crypto/MyAes.cpp +0 -112
  499. package/android/jni/lzma/CPP/7zip/Crypto/MyAes.h +0 -57
  500. package/android/jni/lzma/CPP/7zip/Crypto/MyAesReg.cpp +0 -16
  501. package/android/jni/lzma/CPP/7zip/Crypto/RandGen.cpp +0 -233
  502. package/android/jni/lzma/CPP/7zip/Crypto/RandGen.h +0 -40
  503. package/android/jni/lzma/CPP/7zip/Crypto/StdAfx.h +0 -8
  504. package/android/jni/lzma/CPP/7zip/GuiCommon.rc +0 -84
  505. package/android/jni/lzma/CPP/7zip/Guid.txt +0 -220
  506. package/android/jni/lzma/CPP/7zip/ICoder.h +0 -399
  507. package/android/jni/lzma/CPP/7zip/IDecl.h +0 -28
  508. package/android/jni/lzma/CPP/7zip/IPassword.h +0 -23
  509. package/android/jni/lzma/CPP/7zip/IProgress.h +0 -19
  510. package/android/jni/lzma/CPP/7zip/IStream.h +0 -127
  511. package/android/jni/lzma/CPP/7zip/LzmaDec.mak +0 -5
  512. package/android/jni/lzma/CPP/7zip/MyVersion.h +0 -2
  513. package/android/jni/lzma/CPP/7zip/MyVersionInfo.rc +0 -2
  514. package/android/jni/lzma/CPP/7zip/PropID.h +0 -127
  515. package/android/jni/lzma/CPP/7zip/SubBuild.mak +0 -3
  516. package/android/jni/lzma/CPP/7zip/UI/Client7z/Client7z.cpp +0 -993
  517. package/android/jni/lzma/CPP/7zip/UI/Client7z/Client7z.dsp +0 -235
  518. package/android/jni/lzma/CPP/7zip/UI/Client7z/Client7z.dsw +0 -29
  519. package/android/jni/lzma/CPP/7zip/UI/Client7z/StdAfx.cpp +0 -3
  520. package/android/jni/lzma/CPP/7zip/UI/Client7z/StdAfx.h +0 -8
  521. package/android/jni/lzma/CPP/7zip/UI/Client7z/makefile +0 -28
  522. package/android/jni/lzma/CPP/7zip/UI/Client7z/resource.rc +0 -3
  523. package/android/jni/lzma/CPP/7zip/UI/Common/ArchiveCommandLine.cpp +0 -1295
  524. package/android/jni/lzma/CPP/7zip/UI/Common/ArchiveCommandLine.h +0 -136
  525. package/android/jni/lzma/CPP/7zip/UI/Common/ArchiveExtractCallback.cpp +0 -1715
  526. package/android/jni/lzma/CPP/7zip/UI/Common/ArchiveExtractCallback.h +0 -403
  527. package/android/jni/lzma/CPP/7zip/UI/Common/ArchiveName.cpp +0 -155
  528. package/android/jni/lzma/CPP/7zip/UI/Common/ArchiveName.h +0 -10
  529. package/android/jni/lzma/CPP/7zip/UI/Common/ArchiveOpenCallback.cpp +0 -161
  530. package/android/jni/lzma/CPP/7zip/UI/Common/ArchiveOpenCallback.h +0 -112
  531. package/android/jni/lzma/CPP/7zip/UI/Common/Bench.cpp +0 -3618
  532. package/android/jni/lzma/CPP/7zip/UI/Common/Bench.h +0 -77
  533. package/android/jni/lzma/CPP/7zip/UI/Common/DefaultName.cpp +0 -37
  534. package/android/jni/lzma/CPP/7zip/UI/Common/DefaultName.h +0 -11
  535. package/android/jni/lzma/CPP/7zip/UI/Common/DirItem.h +0 -190
  536. package/android/jni/lzma/CPP/7zip/UI/Common/EnumDirItems.cpp +0 -1096
  537. package/android/jni/lzma/CPP/7zip/UI/Common/EnumDirItems.h +0 -42
  538. package/android/jni/lzma/CPP/7zip/UI/Common/ExitCode.h +0 -27
  539. package/android/jni/lzma/CPP/7zip/UI/Common/Extract.cpp +0 -482
  540. package/android/jni/lzma/CPP/7zip/UI/Common/Extract.h +0 -94
  541. package/android/jni/lzma/CPP/7zip/UI/Common/ExtractMode.h +0 -34
  542. package/android/jni/lzma/CPP/7zip/UI/Common/ExtractingFilePath.cpp +0 -280
  543. package/android/jni/lzma/CPP/7zip/UI/Common/ExtractingFilePath.h +0 -31
  544. package/android/jni/lzma/CPP/7zip/UI/Common/HashCalc.cpp +0 -347
  545. package/android/jni/lzma/CPP/7zip/UI/Common/HashCalc.h +0 -110
  546. package/android/jni/lzma/CPP/7zip/UI/Common/IFileExtractCallback.h +0 -114
  547. package/android/jni/lzma/CPP/7zip/UI/Common/LoadCodecs.cpp +0 -1074
  548. package/android/jni/lzma/CPP/7zip/UI/Common/LoadCodecs.h +0 -424
  549. package/android/jni/lzma/CPP/7zip/UI/Common/OpenArchive.cpp +0 -3553
  550. package/android/jni/lzma/CPP/7zip/UI/Common/OpenArchive.h +0 -436
  551. package/android/jni/lzma/CPP/7zip/UI/Common/PropIDUtils.cpp +0 -668
  552. package/android/jni/lzma/CPP/7zip/UI/Common/PropIDUtils.h +0 -18
  553. package/android/jni/lzma/CPP/7zip/UI/Common/Property.h +0 -14
  554. package/android/jni/lzma/CPP/7zip/UI/Common/SetProperties.cpp +0 -80
  555. package/android/jni/lzma/CPP/7zip/UI/Common/SetProperties.h +0 -10
  556. package/android/jni/lzma/CPP/7zip/UI/Common/SortUtils.cpp +0 -25
  557. package/android/jni/lzma/CPP/7zip/UI/Common/SortUtils.h +0 -10
  558. package/android/jni/lzma/CPP/7zip/UI/Common/StdAfx.h +0 -8
  559. package/android/jni/lzma/CPP/7zip/UI/Common/TempFiles.cpp +0 -19
  560. package/android/jni/lzma/CPP/7zip/UI/Common/TempFiles.h +0 -16
  561. package/android/jni/lzma/CPP/7zip/UI/Common/Update.cpp +0 -1704
  562. package/android/jni/lzma/CPP/7zip/UI/Common/Update.h +0 -200
  563. package/android/jni/lzma/CPP/7zip/UI/Common/UpdateAction.cpp +0 -64
  564. package/android/jni/lzma/CPP/7zip/UI/Common/UpdateAction.h +0 -66
  565. package/android/jni/lzma/CPP/7zip/UI/Common/UpdateCallback.cpp +0 -771
  566. package/android/jni/lzma/CPP/7zip/UI/Common/UpdateCallback.h +0 -162
  567. package/android/jni/lzma/CPP/7zip/UI/Common/UpdatePair.cpp +0 -233
  568. package/android/jni/lzma/CPP/7zip/UI/Common/UpdatePair.h +0 -27
  569. package/android/jni/lzma/CPP/7zip/UI/Common/UpdateProduce.cpp +0 -70
  570. package/android/jni/lzma/CPP/7zip/UI/Common/UpdateProduce.h +0 -55
  571. package/android/jni/lzma/CPP/7zip/UI/Common/WorkDir.cpp +0 -94
  572. package/android/jni/lzma/CPP/7zip/UI/Common/WorkDir.h +0 -26
  573. package/android/jni/lzma/CPP/7zip/UI/Common/ZipRegistry.h +0 -130
  574. package/android/jni/lzma/CPP/7zip/UI/Console/BenchCon.cpp +0 -41
  575. package/android/jni/lzma/CPP/7zip/UI/Console/BenchCon.h +0 -14
  576. package/android/jni/lzma/CPP/7zip/UI/Console/Console.mak +0 -43
  577. package/android/jni/lzma/CPP/7zip/UI/Console/Console.manifest +0 -13
  578. package/android/jni/lzma/CPP/7zip/UI/Console/ConsoleClose.cpp +0 -69
  579. package/android/jni/lzma/CPP/7zip/UI/Console/ConsoleClose.h +0 -33
  580. package/android/jni/lzma/CPP/7zip/UI/Console/ExtractCallbackConsole.cpp +0 -825
  581. package/android/jni/lzma/CPP/7zip/UI/Console/ExtractCallbackConsole.h +0 -164
  582. package/android/jni/lzma/CPP/7zip/UI/Console/HashCon.cpp +0 -367
  583. package/android/jni/lzma/CPP/7zip/UI/Console/HashCon.h +0 -48
  584. package/android/jni/lzma/CPP/7zip/UI/Console/List.cpp +0 -1359
  585. package/android/jni/lzma/CPP/7zip/UI/Console/List.h +0 -27
  586. package/android/jni/lzma/CPP/7zip/UI/Console/Main.cpp +0 -1154
  587. package/android/jni/lzma/CPP/7zip/UI/Console/MainAr.cpp +0 -175
  588. package/android/jni/lzma/CPP/7zip/UI/Console/OpenCallbackConsole.cpp +0 -115
  589. package/android/jni/lzma/CPP/7zip/UI/Console/OpenCallbackConsole.h +0 -66
  590. package/android/jni/lzma/CPP/7zip/UI/Console/PercentPrinter.cpp +0 -183
  591. package/android/jni/lzma/CPP/7zip/UI/Console/PercentPrinter.h +0 -62
  592. package/android/jni/lzma/CPP/7zip/UI/Console/StdAfx.cpp +0 -3
  593. package/android/jni/lzma/CPP/7zip/UI/Console/StdAfx.h +0 -8
  594. package/android/jni/lzma/CPP/7zip/UI/Console/UpdateCallbackConsole.cpp +0 -702
  595. package/android/jni/lzma/CPP/7zip/UI/Console/UpdateCallbackConsole.h +0 -124
  596. package/android/jni/lzma/CPP/7zip/UI/Console/UserInputUtils.cpp +0 -110
  597. package/android/jni/lzma/CPP/7zip/UI/Console/UserInputUtils.h +0 -27
  598. package/android/jni/lzma/CPP/7zip/UI/Console/makefile +0 -64
  599. package/android/jni/lzma/CPP/7zip/UI/Console/resource.rc +0 -7
  600. package/android/jni/lzma/CPP/7zip/UI/Explorer/MyMessages.cpp +0 -37
  601. package/android/jni/lzma/CPP/7zip/UI/Explorer/MyMessages.h +0 -16
  602. package/android/jni/lzma/CPP/7zip/UI/FileManager/BrowseDialog.cpp +0 -1025
  603. package/android/jni/lzma/CPP/7zip/UI/FileManager/BrowseDialog.h +0 -21
  604. package/android/jni/lzma/CPP/7zip/UI/FileManager/BrowseDialogRes.h +0 -9
  605. package/android/jni/lzma/CPP/7zip/UI/FileManager/ComboDialog.cpp +0 -64
  606. package/android/jni/lzma/CPP/7zip/UI/FileManager/ComboDialog.h +0 -28
  607. package/android/jni/lzma/CPP/7zip/UI/FileManager/ComboDialogRes.h +0 -4
  608. package/android/jni/lzma/CPP/7zip/UI/FileManager/DialogSize.h +0 -16
  609. package/android/jni/lzma/CPP/7zip/UI/FileManager/ExtractCallback.cpp +0 -1037
  610. package/android/jni/lzma/CPP/7zip/UI/FileManager/ExtractCallback.h +0 -328
  611. package/android/jni/lzma/CPP/7zip/UI/FileManager/FormatUtils.cpp +0 -28
  612. package/android/jni/lzma/CPP/7zip/UI/FileManager/FormatUtils.h +0 -14
  613. package/android/jni/lzma/CPP/7zip/UI/FileManager/LangUtils.h +0 -40
  614. package/android/jni/lzma/CPP/7zip/UI/FileManager/MyWindowsNew.h +0 -76
  615. package/android/jni/lzma/CPP/7zip/UI/FileManager/OverwriteDialog.cpp +0 -122
  616. package/android/jni/lzma/CPP/7zip/UI/FileManager/OverwriteDialog.h +0 -69
  617. package/android/jni/lzma/CPP/7zip/UI/FileManager/OverwriteDialog.rc +0 -91
  618. package/android/jni/lzma/CPP/7zip/UI/FileManager/OverwriteDialogRes.h +0 -17
  619. package/android/jni/lzma/CPP/7zip/UI/FileManager/PasswordDialog.cpp +0 -58
  620. package/android/jni/lzma/CPP/7zip/UI/FileManager/PasswordDialog.h +0 -28
  621. package/android/jni/lzma/CPP/7zip/UI/FileManager/PasswordDialog.rc +0 -14
  622. package/android/jni/lzma/CPP/7zip/UI/FileManager/PasswordDialogRes.h +0 -5
  623. package/android/jni/lzma/CPP/7zip/UI/FileManager/ProgressDialog.cpp +0 -196
  624. package/android/jni/lzma/CPP/7zip/UI/FileManager/ProgressDialog.h +0 -170
  625. package/android/jni/lzma/CPP/7zip/UI/FileManager/ProgressDialog.rc +0 -12
  626. package/android/jni/lzma/CPP/7zip/UI/FileManager/ProgressDialog2.cpp +0 -1337
  627. package/android/jni/lzma/CPP/7zip/UI/FileManager/ProgressDialog2.h +0 -351
  628. package/android/jni/lzma/CPP/7zip/UI/FileManager/ProgressDialog2.rc +0 -40
  629. package/android/jni/lzma/CPP/7zip/UI/FileManager/ProgressDialog2Res.h +0 -48
  630. package/android/jni/lzma/CPP/7zip/UI/FileManager/ProgressDialog2a.rc +0 -80
  631. package/android/jni/lzma/CPP/7zip/UI/FileManager/ProgressDialogRes.h +0 -3
  632. package/android/jni/lzma/CPP/7zip/UI/FileManager/PropertyName.cpp +0 -23
  633. package/android/jni/lzma/CPP/7zip/UI/FileManager/PropertyName.h +0 -10
  634. package/android/jni/lzma/CPP/7zip/UI/FileManager/PropertyNameRes.h +0 -95
  635. package/android/jni/lzma/CPP/7zip/UI/FileManager/SysIconUtils.cpp +0 -255
  636. package/android/jni/lzma/CPP/7zip/UI/FileManager/SysIconUtils.h +0 -62
  637. package/android/jni/lzma/CPP/7zip/UI/FileManager/resource.h +0 -177
  638. package/android/jni/lzma/CPP/7zip/UI/FileManager/resourceGui.h +0 -15
  639. package/android/jni/lzma/CPP/7zip/UI/GUI/Extract.rc +0 -59
  640. package/android/jni/lzma/CPP/7zip/UI/GUI/ExtractDialog.cpp +0 -418
  641. package/android/jni/lzma/CPP/7zip/UI/GUI/ExtractDialog.h +0 -113
  642. package/android/jni/lzma/CPP/7zip/UI/GUI/ExtractDialog.rc +0 -98
  643. package/android/jni/lzma/CPP/7zip/UI/GUI/ExtractDialogRes.h +0 -24
  644. package/android/jni/lzma/CPP/7zip/UI/GUI/ExtractGUI.cpp +0 -280
  645. package/android/jni/lzma/CPP/7zip/UI/GUI/ExtractGUI.h +0 -38
  646. package/android/jni/lzma/CPP/7zip/UI/GUI/ExtractRes.h +0 -51
  647. package/android/jni/lzma/CPP/7zip/UI/GUI/HashGUI.h +0 -27
  648. package/android/jni/lzma/CPP/7zip/UI/GUI/resource2.h +0 -2
  649. package/android/jni/lzma/CPP/Build.mak +0 -156
  650. package/android/jni/lzma/CPP/Common/AutoPtr.h +0 -35
  651. package/android/jni/lzma/CPP/Common/CRC.cpp +0 -7
  652. package/android/jni/lzma/CPP/Common/C_FileIO.cpp +0 -92
  653. package/android/jni/lzma/CPP/Common/C_FileIO.h +0 -53
  654. package/android/jni/lzma/CPP/Common/ComTry.h +0 -21
  655. package/android/jni/lzma/CPP/Common/CommandLineParser.cpp +0 -197
  656. package/android/jni/lzma/CPP/Common/CommandLineParser.h +0 -63
  657. package/android/jni/lzma/CPP/Common/Common.h +0 -43
  658. package/android/jni/lzma/CPP/Common/CrcReg.cpp +0 -98
  659. package/android/jni/lzma/CPP/Common/Defs.h +0 -15
  660. package/android/jni/lzma/CPP/Common/DynamicBuffer.h +0 -64
  661. package/android/jni/lzma/CPP/Common/IntToString.cpp +0 -193
  662. package/android/jni/lzma/CPP/Common/IntToString.h +0 -28
  663. package/android/jni/lzma/CPP/Common/Lang.h +0 -23
  664. package/android/jni/lzma/CPP/Common/ListFileUtils.cpp +0 -132
  665. package/android/jni/lzma/CPP/Common/ListFileUtils.h +0 -18
  666. package/android/jni/lzma/CPP/Common/MyBuffer.h +0 -259
  667. package/android/jni/lzma/CPP/Common/MyBuffer2.h +0 -100
  668. package/android/jni/lzma/CPP/Common/MyCom.h +0 -277
  669. package/android/jni/lzma/CPP/Common/MyException.h +0 -14
  670. package/android/jni/lzma/CPP/Common/MyGuidDef.h +0 -54
  671. package/android/jni/lzma/CPP/Common/MyInitGuid.h +0 -45
  672. package/android/jni/lzma/CPP/Common/MyLinux.h +0 -42
  673. package/android/jni/lzma/CPP/Common/MyString.cpp +0 -1659
  674. package/android/jni/lzma/CPP/Common/MyString.h +0 -868
  675. package/android/jni/lzma/CPP/Common/MyTypes.h +0 -35
  676. package/android/jni/lzma/CPP/Common/MyUnknown.h +0 -17
  677. package/android/jni/lzma/CPP/Common/MyVector.cpp +0 -3
  678. package/android/jni/lzma/CPP/Common/MyVector.h +0 -634
  679. package/android/jni/lzma/CPP/Common/MyWindows.cpp +0 -145
  680. package/android/jni/lzma/CPP/Common/MyWindows.h +0 -231
  681. package/android/jni/lzma/CPP/Common/NewHandler.cpp +0 -163
  682. package/android/jni/lzma/CPP/Common/NewHandler.h +0 -88
  683. package/android/jni/lzma/CPP/Common/Sha256Reg.cpp +0 -40
  684. package/android/jni/lzma/CPP/Common/StdAfx.h +0 -8
  685. package/android/jni/lzma/CPP/Common/StdInStream.cpp +0 -89
  686. package/android/jni/lzma/CPP/Common/StdInStream.h +0 -38
  687. package/android/jni/lzma/CPP/Common/StdOutStream.cpp +0 -163
  688. package/android/jni/lzma/CPP/Common/StdOutStream.h +0 -71
  689. package/android/jni/lzma/CPP/Common/StringConvert.cpp +0 -319
  690. package/android/jni/lzma/CPP/Common/StringConvert.h +0 -88
  691. package/android/jni/lzma/CPP/Common/StringToInt.cpp +0 -144
  692. package/android/jni/lzma/CPP/Common/StringToInt.h +0 -21
  693. package/android/jni/lzma/CPP/Common/TextConfig.cpp +0 -124
  694. package/android/jni/lzma/CPP/Common/TextConfig.h +0 -19
  695. package/android/jni/lzma/CPP/Common/UTFConvert.cpp +0 -288
  696. package/android/jni/lzma/CPP/Common/UTFConvert.h +0 -12
  697. package/android/jni/lzma/CPP/Common/Wildcard.cpp +0 -676
  698. package/android/jni/lzma/CPP/Common/Wildcard.h +0 -149
  699. package/android/jni/lzma/CPP/Common/XzCrc64Init.cpp +0 -7
  700. package/android/jni/lzma/CPP/Common/XzCrc64Reg.cpp +0 -42
  701. package/android/jni/lzma/CPP/Windows/COM.h +0 -70
  702. package/android/jni/lzma/CPP/Windows/CommonDialog.cpp +0 -185
  703. package/android/jni/lzma/CPP/Windows/CommonDialog.h +0 -23
  704. package/android/jni/lzma/CPP/Windows/Control/ComboBox.cpp +0 -66
  705. package/android/jni/lzma/CPP/Windows/Control/ComboBox.h +0 -65
  706. package/android/jni/lzma/CPP/Windows/Control/CommandBar.h +0 -52
  707. package/android/jni/lzma/CPP/Windows/Control/Dialog.cpp +0 -251
  708. package/android/jni/lzma/CPP/Windows/Control/Dialog.h +0 -170
  709. package/android/jni/lzma/CPP/Windows/Control/Edit.h +0 -19
  710. package/android/jni/lzma/CPP/Windows/Control/ImageList.cpp +0 -10
  711. package/android/jni/lzma/CPP/Windows/Control/ImageList.h +0 -87
  712. package/android/jni/lzma/CPP/Windows/Control/ListView.cpp +0 -155
  713. package/android/jni/lzma/CPP/Windows/Control/ListView.h +0 -146
  714. package/android/jni/lzma/CPP/Windows/Control/ProgressBar.h +0 -35
  715. package/android/jni/lzma/CPP/Windows/Control/PropertyPage.cpp +0 -143
  716. package/android/jni/lzma/CPP/Windows/Control/PropertyPage.h +0 -50
  717. package/android/jni/lzma/CPP/Windows/Control/ReBar.h +0 -34
  718. package/android/jni/lzma/CPP/Windows/Control/Static.h +0 -28
  719. package/android/jni/lzma/CPP/Windows/Control/StatusBar.h +0 -42
  720. package/android/jni/lzma/CPP/Windows/Control/StdAfx.h +0 -8
  721. package/android/jni/lzma/CPP/Windows/Control/ToolBar.h +0 -43
  722. package/android/jni/lzma/CPP/Windows/Control/Trackbar.h +0 -27
  723. package/android/jni/lzma/CPP/Windows/Control/Window2.cpp +0 -200
  724. package/android/jni/lzma/CPP/Windows/Control/Window2.h +0 -51
  725. package/android/jni/lzma/CPP/Windows/DLL.cpp +0 -109
  726. package/android/jni/lzma/CPP/Windows/DLL.h +0 -58
  727. package/android/jni/lzma/CPP/Windows/Defs.h +0 -17
  728. package/android/jni/lzma/CPP/Windows/ErrorMsg.cpp +0 -66
  729. package/android/jni/lzma/CPP/Windows/ErrorMsg.h +0 -15
  730. package/android/jni/lzma/CPP/Windows/FileDir.cpp +0 -714
  731. package/android/jni/lzma/CPP/Windows/FileDir.h +0 -117
  732. package/android/jni/lzma/CPP/Windows/FileFind.cpp +0 -749
  733. package/android/jni/lzma/CPP/Windows/FileFind.h +0 -161
  734. package/android/jni/lzma/CPP/Windows/FileIO.cpp +0 -432
  735. package/android/jni/lzma/CPP/Windows/FileIO.h +0 -212
  736. package/android/jni/lzma/CPP/Windows/FileLink.cpp +0 -440
  737. package/android/jni/lzma/CPP/Windows/FileMapping.cpp +0 -12
  738. package/android/jni/lzma/CPP/Windows/FileMapping.h +0 -66
  739. package/android/jni/lzma/CPP/Windows/FileName.cpp +0 -839
  740. package/android/jni/lzma/CPP/Windows/FileName.h +0 -115
  741. package/android/jni/lzma/CPP/Windows/FileSystem.cpp +0 -131
  742. package/android/jni/lzma/CPP/Windows/FileSystem.h +0 -27
  743. package/android/jni/lzma/CPP/Windows/Handle.h +0 -37
  744. package/android/jni/lzma/CPP/Windows/MemoryLock.cpp +0 -112
  745. package/android/jni/lzma/CPP/Windows/MemoryLock.h +0 -40
  746. package/android/jni/lzma/CPP/Windows/NtCheck.h +0 -46
  747. package/android/jni/lzma/CPP/Windows/PropVariant.cpp +0 -347
  748. package/android/jni/lzma/CPP/Windows/PropVariant.h +0 -114
  749. package/android/jni/lzma/CPP/Windows/PropVariantConv.cpp +0 -138
  750. package/android/jni/lzma/CPP/Windows/PropVariantConv.h +0 -37
  751. package/android/jni/lzma/CPP/Windows/Registry.cpp +0 -390
  752. package/android/jni/lzma/CPP/Windows/Registry.h +0 -84
  753. package/android/jni/lzma/CPP/Windows/ResourceString.cpp +0 -103
  754. package/android/jni/lzma/CPP/Windows/ResourceString.h +0 -16
  755. package/android/jni/lzma/CPP/Windows/SecurityUtils.cpp +0 -181
  756. package/android/jni/lzma/CPP/Windows/SecurityUtils.h +0 -167
  757. package/android/jni/lzma/CPP/Windows/Shell.cpp +0 -358
  758. package/android/jni/lzma/CPP/Windows/Shell.h +0 -94
  759. package/android/jni/lzma/CPP/Windows/StdAfx.h +0 -8
  760. package/android/jni/lzma/CPP/Windows/Synchronization.cpp +0 -10
  761. package/android/jni/lzma/CPP/Windows/Synchronization.h +0 -164
  762. package/android/jni/lzma/CPP/Windows/System.cpp +0 -142
  763. package/android/jni/lzma/CPP/Windows/System.h +0 -40
  764. package/android/jni/lzma/CPP/Windows/Thread.h +0 -38
  765. package/android/jni/lzma/CPP/Windows/TimeUtils.cpp +0 -213
  766. package/android/jni/lzma/CPP/Windows/TimeUtils.h +0 -32
  767. package/android/jni/lzma/CPP/Windows/Window.cpp +0 -179
  768. package/android/jni/lzma/CPP/Windows/Window.h +0 -284
  769. package/android/jni/lzma/CS/7zip/Common/CRC.cs +0 -55
  770. package/android/jni/lzma/CS/7zip/Common/CommandLineParser.cs +0 -274
  771. package/android/jni/lzma/CS/7zip/Common/InBuffer.cs +0 -72
  772. package/android/jni/lzma/CS/7zip/Common/OutBuffer.cs +0 -47
  773. package/android/jni/lzma/CS/7zip/Compress/LZ/IMatchFinder.cs +0 -24
  774. package/android/jni/lzma/CS/7zip/Compress/LZ/LzBinTree.cs +0 -367
  775. package/android/jni/lzma/CS/7zip/Compress/LZ/LzInWindow.cs +0 -132
  776. package/android/jni/lzma/CS/7zip/Compress/LZ/LzOutWindow.cs +0 -110
  777. package/android/jni/lzma/CS/7zip/Compress/LZMA/LzmaBase.cs +0 -76
  778. package/android/jni/lzma/CS/7zip/Compress/LZMA/LzmaDecoder.cs +0 -398
  779. package/android/jni/lzma/CS/7zip/Compress/LZMA/LzmaEncoder.cs +0 -1480
  780. package/android/jni/lzma/CS/7zip/Compress/LzmaAlone/LzmaAlone.cs +0 -364
  781. package/android/jni/lzma/CS/7zip/Compress/LzmaAlone/LzmaAlone.csproj +0 -90
  782. package/android/jni/lzma/CS/7zip/Compress/LzmaAlone/LzmaAlone.sln +0 -20
  783. package/android/jni/lzma/CS/7zip/Compress/LzmaAlone/LzmaBench.cs +0 -340
  784. package/android/jni/lzma/CS/7zip/Compress/LzmaAlone/Properties/AssemblyInfo.cs +0 -29
  785. package/android/jni/lzma/CS/7zip/Compress/LzmaAlone/Properties/Resources.cs +0 -70
  786. package/android/jni/lzma/CS/7zip/Compress/LzmaAlone/Properties/Settings.cs +0 -42
  787. package/android/jni/lzma/CS/7zip/Compress/RangeCoder/RangeCoder.cs +0 -234
  788. package/android/jni/lzma/CS/7zip/Compress/RangeCoder/RangeCoderBit.cs +0 -117
  789. package/android/jni/lzma/CS/7zip/Compress/RangeCoder/RangeCoderBitTree.cs +0 -157
  790. package/android/jni/lzma/CS/7zip/ICoder.cs +0 -157
  791. package/android/jni/lzma/DOC/7zC.txt +0 -187
  792. package/android/jni/lzma/DOC/7zFormat.txt +0 -469
  793. package/android/jni/lzma/DOC/Methods.txt +0 -173
  794. package/android/jni/lzma/DOC/installer.txt +0 -166
  795. package/android/jni/lzma/DOC/lzma-history.txt +0 -446
  796. package/android/jni/lzma/DOC/lzma-specification.txt +0 -1176
  797. package/android/jni/lzma/DOC/lzma.txt +0 -328
  798. package/android/jni/lzma/Java/SevenZip/CRC.java +0 -52
  799. package/android/jni/lzma/Java/SevenZip/Compression/LZ/BinTree.java +0 -382
  800. package/android/jni/lzma/Java/SevenZip/Compression/LZ/InWindow.java +0 -131
  801. package/android/jni/lzma/Java/SevenZip/Compression/LZ/OutWindow.java +0 -85
  802. package/android/jni/lzma/Java/SevenZip/Compression/LZMA/Base.java +0 -88
  803. package/android/jni/lzma/Java/SevenZip/Compression/LZMA/Decoder.java +0 -329
  804. package/android/jni/lzma/Java/SevenZip/Compression/LZMA/Encoder.java +0 -1416
  805. package/android/jni/lzma/Java/SevenZip/Compression/RangeCoder/BitTreeDecoder.java +0 -55
  806. package/android/jni/lzma/Java/SevenZip/Compression/RangeCoder/BitTreeEncoder.java +0 -99
  807. package/android/jni/lzma/Java/SevenZip/Compression/RangeCoder/Decoder.java +0 -88
  808. package/android/jni/lzma/Java/SevenZip/Compression/RangeCoder/Encoder.java +0 -151
  809. package/android/jni/lzma/Java/SevenZip/ICodeProgress.java +0 -6
  810. package/android/jni/lzma/Java/SevenZip/LzmaAlone.java +0 -253
  811. package/android/jni/lzma/Java/SevenZip/LzmaBench.java +0 -392
  812. package/android/jni/lzma/bin/7zS2.sfx +0 -0
  813. package/android/jni/lzma/bin/7zS2con.sfx +0 -0
  814. package/android/jni/lzma/bin/7zSD.sfx +0 -0
  815. package/android/jni/lzma/bin/7zdec.exe +0 -0
  816. package/android/jni/lzma/bin/7zr.exe +0 -0
  817. package/android/jni/lzma/bin/installer/config.txt +0 -5
  818. package/android/jni/lzma/bin/installer/cr.bat +0 -5
  819. package/android/jni/lzma/bin/lzma.exe +0 -0
  820. package/android/jni/lzma/bin/x64/7zr.exe +0 -0
@@ -1,1704 +0,0 @@
1
- // Update.cpp
2
-
3
- #include "StdAfx.h"
4
-
5
- #include "Update.h"
6
-
7
- #include "../../../Common/StringConvert.h"
8
-
9
- #include "../../../Windows/DLL.h"
10
- #include "../../../Windows/FileDir.h"
11
- #include "../../../Windows/FileFind.h"
12
- #include "../../../Windows/FileName.h"
13
- #include "../../../Windows/PropVariant.h"
14
- #include "../../../Windows/PropVariantConv.h"
15
- #include "../../../Windows/TimeUtils.h"
16
-
17
- #include "../../Common/FileStreams.h"
18
- #include "../../Common/LimitedStreams.h"
19
-
20
- #include "../../Compress/CopyCoder.h"
21
-
22
- #include "../Common/DirItem.h"
23
- #include "../Common/EnumDirItems.h"
24
- #include "../Common/OpenArchive.h"
25
- #include "../Common/UpdateProduce.h"
26
-
27
- #include "EnumDirItems.h"
28
- #include "SetProperties.h"
29
- #include "TempFiles.h"
30
- #include "UpdateCallback.h"
31
-
32
- static const char * const kUpdateIsNotSupoorted =
33
- "update operations are not supported for this archive";
34
-
35
- static const char * const kUpdateIsNotSupoorted_MultiVol =
36
- "Updating for multivolume archives is not implemented";
37
-
38
- using namespace NWindows;
39
- using namespace NCOM;
40
- using namespace NFile;
41
- using namespace NDir;
42
- using namespace NName;
43
-
44
- static CFSTR const kTempFolderPrefix = FTEXT("7zE");
45
-
46
-
47
- void CUpdateErrorInfo::SetFromLastError(const char *message)
48
- {
49
- SystemError = ::GetLastError();
50
- Message = message;
51
- }
52
-
53
- HRESULT CUpdateErrorInfo::SetFromLastError(const char *message, const FString &fileName)
54
- {
55
- SetFromLastError(message);
56
- FileNames.Add(fileName);
57
- return Get_HRESULT_Error();
58
- }
59
-
60
- static bool DeleteEmptyFolderAndEmptySubFolders(const FString &path)
61
- {
62
- NFind::CFileInfo fileInfo;
63
- FString pathPrefix = path + FCHAR_PATH_SEPARATOR;
64
- {
65
- NFind::CEnumerator enumerator;
66
- enumerator.SetDirPrefix(pathPrefix);
67
- while (enumerator.Next(fileInfo))
68
- {
69
- if (fileInfo.IsDir())
70
- if (!DeleteEmptyFolderAndEmptySubFolders(pathPrefix + fileInfo.Name))
71
- return false;
72
- }
73
- }
74
- /*
75
- // we don't need clear read-only for folders
76
- if (!MySetFileAttributes(path, 0))
77
- return false;
78
- */
79
- return RemoveDir(path);
80
- }
81
-
82
-
83
- using namespace NUpdateArchive;
84
-
85
- class COutMultiVolStream:
86
- public IOutStream,
87
- public CMyUnknownImp
88
- {
89
- unsigned _streamIndex; // required stream
90
- UInt64 _offsetPos; // offset from start of _streamIndex index
91
- UInt64 _absPos;
92
- UInt64 _length;
93
-
94
- struct CAltStreamInfo
95
- {
96
- COutFileStream *StreamSpec;
97
- CMyComPtr<IOutStream> Stream;
98
- FString Name;
99
- UInt64 Pos;
100
- UInt64 RealSize;
101
- };
102
- CObjectVector<CAltStreamInfo> Streams;
103
- public:
104
- // CMyComPtr<IArchiveUpdateCallback2> VolumeCallback;
105
- CRecordVector<UInt64> Sizes;
106
- FString Prefix;
107
- CTempFiles *TempFiles;
108
-
109
- void Init()
110
- {
111
- _streamIndex = 0;
112
- _offsetPos = 0;
113
- _absPos = 0;
114
- _length = 0;
115
- }
116
-
117
- bool SetMTime(const FILETIME *mTime);
118
- HRESULT Close();
119
-
120
- UInt64 GetSize() const { return _length; }
121
-
122
- MY_UNKNOWN_IMP1(IOutStream)
123
-
124
- STDMETHOD(Write)(const void *data, UInt32 size, UInt32 *processedSize);
125
- STDMETHOD(Seek)(Int64 offset, UInt32 seekOrigin, UInt64 *newPosition);
126
- STDMETHOD(SetSize)(UInt64 newSize);
127
- };
128
-
129
- // static NSynchronization::CCriticalSection g_TempPathsCS;
130
-
131
- HRESULT COutMultiVolStream::Close()
132
- {
133
- HRESULT res = S_OK;
134
- FOR_VECTOR (i, Streams)
135
- {
136
- COutFileStream *s = Streams[i].StreamSpec;
137
- if (s)
138
- {
139
- HRESULT res2 = s->Close();
140
- if (res2 != S_OK)
141
- res = res2;
142
- }
143
- }
144
- return res;
145
- }
146
-
147
- bool COutMultiVolStream::SetMTime(const FILETIME *mTime)
148
- {
149
- bool res = true;
150
- FOR_VECTOR (i, Streams)
151
- {
152
- COutFileStream *s = Streams[i].StreamSpec;
153
- if (s)
154
- if (!s->SetMTime(mTime))
155
- res = false;
156
- }
157
- return res;
158
- }
159
-
160
- STDMETHODIMP COutMultiVolStream::Write(const void *data, UInt32 size, UInt32 *processedSize)
161
- {
162
- if (processedSize)
163
- *processedSize = 0;
164
- while (size > 0)
165
- {
166
- if (_streamIndex >= Streams.Size())
167
- {
168
- CAltStreamInfo altStream;
169
-
170
- FString name;
171
- name.Add_UInt32(_streamIndex + 1);
172
- while (name.Len() < 3)
173
- name.InsertAtFront(FTEXT('0'));
174
- name.Insert(0, Prefix);
175
- altStream.StreamSpec = new COutFileStream;
176
- altStream.Stream = altStream.StreamSpec;
177
- if (!altStream.StreamSpec->Create(name, false))
178
- return ::GetLastError();
179
- {
180
- // NSynchronization::CCriticalSectionLock lock(g_TempPathsCS);
181
- TempFiles->Paths.Add(name);
182
- }
183
-
184
- altStream.Pos = 0;
185
- altStream.RealSize = 0;
186
- altStream.Name = name;
187
- Streams.Add(altStream);
188
- continue;
189
- }
190
- CAltStreamInfo &altStream = Streams[_streamIndex];
191
-
192
- unsigned index = _streamIndex;
193
- if (index >= Sizes.Size())
194
- index = Sizes.Size() - 1;
195
- UInt64 volSize = Sizes[index];
196
-
197
- if (_offsetPos >= volSize)
198
- {
199
- _offsetPos -= volSize;
200
- _streamIndex++;
201
- continue;
202
- }
203
- if (_offsetPos != altStream.Pos)
204
- {
205
- // CMyComPtr<IOutStream> outStream;
206
- // RINOK(altStream.Stream.QueryInterface(IID_IOutStream, &outStream));
207
- RINOK(altStream.Stream->Seek(_offsetPos, STREAM_SEEK_SET, NULL));
208
- altStream.Pos = _offsetPos;
209
- }
210
-
211
- UInt32 curSize = (UInt32)MyMin((UInt64)size, volSize - altStream.Pos);
212
- UInt32 realProcessed;
213
- RINOK(altStream.Stream->Write(data, curSize, &realProcessed));
214
- data = (void *)((Byte *)data + realProcessed);
215
- size -= realProcessed;
216
- altStream.Pos += realProcessed;
217
- _offsetPos += realProcessed;
218
- _absPos += realProcessed;
219
- if (_absPos > _length)
220
- _length = _absPos;
221
- if (_offsetPos > altStream.RealSize)
222
- altStream.RealSize = _offsetPos;
223
- if (processedSize)
224
- *processedSize += realProcessed;
225
- if (altStream.Pos == volSize)
226
- {
227
- _streamIndex++;
228
- _offsetPos = 0;
229
- }
230
- if (realProcessed == 0 && curSize != 0)
231
- return E_FAIL;
232
- break;
233
- }
234
- return S_OK;
235
- }
236
-
237
- STDMETHODIMP COutMultiVolStream::Seek(Int64 offset, UInt32 seekOrigin, UInt64 *newPosition)
238
- {
239
- if (seekOrigin >= 3)
240
- return STG_E_INVALIDFUNCTION;
241
- switch (seekOrigin)
242
- {
243
- case STREAM_SEEK_SET: _absPos = offset; break;
244
- case STREAM_SEEK_CUR: _absPos += offset; break;
245
- case STREAM_SEEK_END: _absPos = _length + offset; break;
246
- }
247
- _offsetPos = _absPos;
248
- if (newPosition)
249
- *newPosition = _absPos;
250
- _streamIndex = 0;
251
- return S_OK;
252
- }
253
-
254
- STDMETHODIMP COutMultiVolStream::SetSize(UInt64 newSize)
255
- {
256
- unsigned i = 0;
257
- while (i < Streams.Size())
258
- {
259
- CAltStreamInfo &altStream = Streams[i++];
260
- if ((UInt64)newSize < altStream.RealSize)
261
- {
262
- RINOK(altStream.Stream->SetSize(newSize));
263
- altStream.RealSize = newSize;
264
- break;
265
- }
266
- newSize -= altStream.RealSize;
267
- }
268
- while (i < Streams.Size())
269
- {
270
- {
271
- CAltStreamInfo &altStream = Streams.Back();
272
- altStream.Stream.Release();
273
- DeleteFileAlways(altStream.Name);
274
- }
275
- Streams.DeleteBack();
276
- }
277
- _offsetPos = _absPos;
278
- _streamIndex = 0;
279
- _length = newSize;
280
- return S_OK;
281
- }
282
-
283
- void CArchivePath::ParseFromPath(const UString &path, EArcNameMode mode)
284
- {
285
- OriginalPath = path;
286
-
287
- SplitPathToParts_2(path, Prefix, Name);
288
-
289
- if (mode == k_ArcNameMode_Add)
290
- return;
291
-
292
- if (mode != k_ArcNameMode_Exact)
293
- {
294
- int dotPos = Name.ReverseFind_Dot();
295
- if (dotPos < 0)
296
- return;
297
- if ((unsigned)dotPos == Name.Len() - 1)
298
- Name.DeleteBack();
299
- else
300
- {
301
- const UString ext = Name.Ptr(dotPos + 1);
302
- if (BaseExtension.IsEqualTo_NoCase(ext))
303
- {
304
- BaseExtension = ext;
305
- Name.DeleteFrom(dotPos);
306
- return;
307
- }
308
- }
309
- }
310
-
311
- BaseExtension.Empty();
312
- }
313
-
314
- UString CArchivePath::GetFinalPath() const
315
- {
316
- UString path = GetPathWithoutExt();
317
- if (!BaseExtension.IsEmpty())
318
- {
319
- path += '.';
320
- path += BaseExtension;
321
- }
322
- return path;
323
- }
324
-
325
- UString CArchivePath::GetFinalVolPath() const
326
- {
327
- UString path = GetPathWithoutExt();
328
- // if BaseExtension is empty, we must ignore VolExtension also.
329
- if (!BaseExtension.IsEmpty())
330
- {
331
- path += '.';
332
- path += VolExtension;
333
- }
334
- return path;
335
- }
336
-
337
- FString CArchivePath::GetTempPath() const
338
- {
339
- FString path = TempPrefix;
340
- path += us2fs(Name);
341
- if (!BaseExtension.IsEmpty())
342
- {
343
- path += '.';
344
- path += us2fs(BaseExtension);
345
- }
346
- path += ".tmp";
347
- path += TempPostfix;
348
- return path;
349
- }
350
-
351
- static const char * const kDefaultArcType = "7z";
352
- static const char * const kDefaultArcExt = "7z";
353
- static const char * const kSFXExtension =
354
- #ifdef _WIN32
355
- "exe";
356
- #else
357
- "";
358
- #endif
359
-
360
- bool CUpdateOptions::InitFormatIndex(const CCodecs *codecs,
361
- const CObjectVector<COpenType> &types, const UString &arcPath)
362
- {
363
- if (types.Size() > 1)
364
- return false;
365
- // int arcTypeIndex = -1;
366
- if (types.Size() != 0)
367
- {
368
- MethodMode.Type = types[0];
369
- MethodMode.Type_Defined = true;
370
- }
371
- if (MethodMode.Type.FormatIndex < 0)
372
- {
373
- // MethodMode.Type = -1;
374
- MethodMode.Type = COpenType();
375
- if (ArcNameMode != k_ArcNameMode_Add)
376
- {
377
- MethodMode.Type.FormatIndex = codecs->FindFormatForArchiveName(arcPath);
378
- if (MethodMode.Type.FormatIndex >= 0)
379
- MethodMode.Type_Defined = true;
380
- }
381
- }
382
- return true;
383
- }
384
-
385
- bool CUpdateOptions::SetArcPath(const CCodecs *codecs, const UString &arcPath)
386
- {
387
- UString typeExt;
388
- int formatIndex = MethodMode.Type.FormatIndex;
389
- if (formatIndex < 0)
390
- {
391
- typeExt = kDefaultArcExt;
392
- }
393
- else
394
- {
395
- const CArcInfoEx &arcInfo = codecs->Formats[formatIndex];
396
- if (!arcInfo.UpdateEnabled)
397
- return false;
398
- typeExt = arcInfo.GetMainExt();
399
- }
400
- UString ext = typeExt;
401
- if (SfxMode)
402
- ext = kSFXExtension;
403
- ArchivePath.BaseExtension = ext;
404
- ArchivePath.VolExtension = typeExt;
405
- ArchivePath.ParseFromPath(arcPath, ArcNameMode);
406
- FOR_VECTOR (i, Commands)
407
- {
408
- CUpdateArchiveCommand &uc = Commands[i];
409
- uc.ArchivePath.BaseExtension = ext;
410
- uc.ArchivePath.VolExtension = typeExt;
411
- uc.ArchivePath.ParseFromPath(uc.UserArchivePath, ArcNameMode);
412
- }
413
- return true;
414
- }
415
-
416
-
417
- struct CUpdateProduceCallbackImp: public IUpdateProduceCallback
418
- {
419
- const CObjectVector<CArcItem> *_arcItems;
420
- IUpdateCallbackUI *_callback;
421
- CDirItemsStat *_stat;
422
-
423
- CUpdateProduceCallbackImp(
424
- const CObjectVector<CArcItem> *a,
425
- CDirItemsStat *stat,
426
- IUpdateCallbackUI *callback):
427
- _arcItems(a),
428
- _stat(stat),
429
- _callback(callback) {}
430
-
431
- virtual HRESULT ShowDeleteFile(unsigned arcIndex);
432
- };
433
-
434
-
435
- HRESULT CUpdateProduceCallbackImp::ShowDeleteFile(unsigned arcIndex)
436
- {
437
- const CArcItem &ai = (*_arcItems)[arcIndex];
438
- {
439
- CDirItemsStat &stat = *_stat;
440
- if (ai.IsDir)
441
- stat.NumDirs++;
442
- else if (ai.IsAltStream)
443
- {
444
- stat.NumAltStreams++;
445
- stat.AltStreamsSize += ai.Size;
446
- }
447
- else
448
- {
449
- stat.NumFiles++;
450
- stat.FilesSize += ai.Size;
451
- }
452
- }
453
- return _callback->ShowDeleteFile(ai.Name, ai.IsDir);
454
- }
455
-
456
- bool CRenamePair::Prepare()
457
- {
458
- if (RecursedType != NRecursedType::kNonRecursed)
459
- return false;
460
- if (!WildcardParsing)
461
- return true;
462
- return !DoesNameContainWildcard(OldName);
463
- }
464
-
465
- extern bool g_CaseSensitive;
466
-
467
- static unsigned CompareTwoNames(const wchar_t *s1, const wchar_t *s2)
468
- {
469
- for (unsigned i = 0;; i++)
470
- {
471
- wchar_t c1 = s1[i];
472
- wchar_t c2 = s2[i];
473
- if (c1 == 0 || c2 == 0)
474
- return i;
475
- if (c1 == c2)
476
- continue;
477
- if (!g_CaseSensitive && (MyCharUpper(c1) == MyCharUpper(c2)))
478
- continue;
479
- if (IsPathSepar(c1) && IsPathSepar(c2))
480
- continue;
481
- return i;
482
- }
483
- }
484
-
485
- bool CRenamePair::GetNewPath(bool isFolder, const UString &src, UString &dest) const
486
- {
487
- unsigned num = CompareTwoNames(OldName, src);
488
- if (OldName[num] == 0)
489
- {
490
- if (src[num] != 0 && !IsPathSepar(src[num]) && num != 0 && !IsPathSepar(src[num - 1]))
491
- return false;
492
- }
493
- else
494
- {
495
- // OldName[num] != 0
496
- // OldName = "1\1a.txt"
497
- // src = "1"
498
-
499
- if (!isFolder
500
- || src[num] != 0
501
- || !IsPathSepar(OldName[num])
502
- || OldName[num + 1] != 0)
503
- return false;
504
- }
505
- dest = NewName + src.Ptr(num);
506
- return true;
507
- }
508
-
509
- #ifdef SUPPORT_ALT_STREAMS
510
- int FindAltStreamColon_in_Path(const wchar_t *path);
511
- #endif
512
-
513
- static HRESULT Compress(
514
- const CUpdateOptions &options,
515
- bool isUpdatingItself,
516
- CCodecs *codecs,
517
- const CActionSet &actionSet,
518
- const CArc *arc,
519
- CArchivePath &archivePath,
520
- const CObjectVector<CArcItem> &arcItems,
521
- Byte *processedItemsStatuses,
522
- const CDirItems &dirItems,
523
- const CDirItem *parentDirItem,
524
- CTempFiles &tempFiles,
525
- CUpdateErrorInfo &errorInfo,
526
- IUpdateCallbackUI *callback,
527
- CFinishArchiveStat &st)
528
- {
529
- CMyComPtr<IOutArchive> outArchive;
530
- int formatIndex = options.MethodMode.Type.FormatIndex;
531
-
532
- if (arc)
533
- {
534
- formatIndex = arc->FormatIndex;
535
- if (formatIndex < 0)
536
- return E_NOTIMPL;
537
- CMyComPtr<IInArchive> archive2 = arc->Archive;
538
- HRESULT result = archive2.QueryInterface(IID_IOutArchive, &outArchive);
539
- if (result != S_OK)
540
- throw kUpdateIsNotSupoorted;
541
- }
542
- else
543
- {
544
- RINOK(codecs->CreateOutArchive(formatIndex, outArchive));
545
-
546
- #ifdef EXTERNAL_CODECS
547
- {
548
- CMyComPtr<ISetCompressCodecsInfo> setCompressCodecsInfo;
549
- outArchive.QueryInterface(IID_ISetCompressCodecsInfo, (void **)&setCompressCodecsInfo);
550
- if (setCompressCodecsInfo)
551
- {
552
- RINOK(setCompressCodecsInfo->SetCompressCodecsInfo(codecs));
553
- }
554
- }
555
- #endif
556
- }
557
-
558
- if (outArchive == 0)
559
- throw kUpdateIsNotSupoorted;
560
-
561
- NFileTimeType::EEnum fileTimeType;
562
- {
563
- UInt32 value;
564
- RINOK(outArchive->GetFileTimeType(&value));
565
-
566
- switch (value)
567
- {
568
- case NFileTimeType::kWindows:
569
- case NFileTimeType::kUnix:
570
- case NFileTimeType::kDOS:
571
- fileTimeType = (NFileTimeType::EEnum)value;
572
- break;
573
- default:
574
- return E_FAIL;
575
- }
576
- }
577
-
578
- {
579
- const CArcInfoEx &arcInfo = codecs->Formats[formatIndex];
580
- if (options.AltStreams.Val && !arcInfo.Flags_AltStreams())
581
- return E_NOTIMPL;
582
- if (options.NtSecurity.Val && !arcInfo.Flags_NtSecure())
583
- return E_NOTIMPL;
584
- }
585
-
586
- CRecordVector<CUpdatePair2> updatePairs2;
587
-
588
- UStringVector newNames;
589
-
590
- CArcToDoStat stat2;
591
-
592
- if (options.RenamePairs.Size() != 0)
593
- {
594
- FOR_VECTOR (i, arcItems)
595
- {
596
- const CArcItem &ai = arcItems[i];
597
- bool needRename = false;
598
- UString dest;
599
-
600
- if (ai.Censored)
601
- {
602
- FOR_VECTOR (j, options.RenamePairs)
603
- {
604
- const CRenamePair &rp = options.RenamePairs[j];
605
- if (rp.GetNewPath(ai.IsDir, ai.Name, dest))
606
- {
607
- needRename = true;
608
- break;
609
- }
610
-
611
- #ifdef SUPPORT_ALT_STREAMS
612
- if (ai.IsAltStream)
613
- {
614
- int colonPos = FindAltStreamColon_in_Path(ai.Name);
615
- if (colonPos >= 0)
616
- {
617
- UString mainName = ai.Name.Left(colonPos);
618
- /*
619
- actually we must improve that code to support cases
620
- with folder renaming like: rn arc dir1\ dir2\
621
- */
622
- if (rp.GetNewPath(false, mainName, dest))
623
- {
624
- needRename = true;
625
- dest += ':';
626
- dest += ai.Name.Ptr(colonPos + 1);
627
- break;
628
- }
629
- }
630
- }
631
- #endif
632
- }
633
- }
634
-
635
- CUpdatePair2 up2;
636
- up2.SetAs_NoChangeArcItem(ai.IndexInServer);
637
- if (needRename)
638
- {
639
- up2.NewProps = true;
640
- RINOK(arc->IsItemAnti(i, up2.IsAnti));
641
- up2.NewNameIndex = newNames.Add(dest);
642
- }
643
- updatePairs2.Add(up2);
644
- }
645
- }
646
- else
647
- {
648
- CRecordVector<CUpdatePair> updatePairs;
649
- GetUpdatePairInfoList(dirItems, arcItems, fileTimeType, updatePairs); // must be done only once!!!
650
- CUpdateProduceCallbackImp upCallback(&arcItems, &stat2.DeleteData, callback);
651
-
652
- UpdateProduce(updatePairs, actionSet, updatePairs2, isUpdatingItself ? &upCallback : NULL);
653
- }
654
-
655
- {
656
- FOR_VECTOR (i, updatePairs2)
657
- {
658
- const CUpdatePair2 &up = updatePairs2[i];
659
-
660
- // 17.01: anti-item is (up.NewData && (p.UseArcProps in most cases))
661
-
662
- if (up.NewData && !up.UseArcProps)
663
- {
664
- if (up.ExistOnDisk())
665
- {
666
- CDirItemsStat2 &stat = stat2.NewData;
667
- const CDirItem &di = dirItems.Items[up.DirIndex];
668
- if (di.IsDir())
669
- {
670
- if (up.IsAnti)
671
- stat.Anti_NumDirs++;
672
- else
673
- stat.NumDirs++;
674
- }
675
- else if (di.IsAltStream)
676
- {
677
- if (up.IsAnti)
678
- stat.Anti_NumAltStreams++;
679
- else
680
- {
681
- stat.NumAltStreams++;
682
- stat.AltStreamsSize += di.Size;
683
- }
684
- }
685
- else
686
- {
687
- if (up.IsAnti)
688
- stat.Anti_NumFiles++;
689
- else
690
- {
691
- stat.NumFiles++;
692
- stat.FilesSize += di.Size;
693
- }
694
- }
695
- }
696
- }
697
- else if (up.ArcIndex >= 0)
698
- {
699
- CDirItemsStat2 &stat = *(up.NewData ? &stat2.NewData : &stat2.OldData);
700
- const CArcItem &ai = arcItems[up.ArcIndex];
701
- if (ai.IsDir)
702
- {
703
- if (up.IsAnti)
704
- stat.Anti_NumDirs++;
705
- else
706
- stat.NumDirs++;
707
- }
708
- else if (ai.IsAltStream)
709
- {
710
- if (up.IsAnti)
711
- stat.Anti_NumAltStreams++;
712
- else
713
- {
714
- stat.NumAltStreams++;
715
- stat.AltStreamsSize += ai.Size;
716
- }
717
- }
718
- else
719
- {
720
- if (up.IsAnti)
721
- stat.Anti_NumFiles++;
722
- else
723
- {
724
- stat.NumFiles++;
725
- stat.FilesSize += ai.Size;
726
- }
727
- }
728
- }
729
- }
730
- RINOK(callback->SetNumItems(stat2));
731
- }
732
-
733
- CArchiveUpdateCallback *updateCallbackSpec = new CArchiveUpdateCallback;
734
- CMyComPtr<IArchiveUpdateCallback> updateCallback(updateCallbackSpec);
735
-
736
- updateCallbackSpec->ShareForWrite = options.OpenShareForWrite;
737
- updateCallbackSpec->StopAfterOpenError = options.StopAfterOpenError;
738
- updateCallbackSpec->StdInMode = options.StdInMode;
739
- updateCallbackSpec->Callback = callback;
740
-
741
- if (arc)
742
- {
743
- // we set Archive to allow to transfer GetProperty requests back to DLL.
744
- updateCallbackSpec->Archive = arc->Archive;
745
- }
746
-
747
- updateCallbackSpec->DirItems = &dirItems;
748
- updateCallbackSpec->ParentDirItem = parentDirItem;
749
-
750
- updateCallbackSpec->StoreNtSecurity = options.NtSecurity.Val;
751
- updateCallbackSpec->StoreHardLinks = options.HardLinks.Val;
752
- updateCallbackSpec->StoreSymLinks = options.SymLinks.Val;
753
-
754
- updateCallbackSpec->Arc = arc;
755
- updateCallbackSpec->ArcItems = &arcItems;
756
- updateCallbackSpec->UpdatePairs = &updatePairs2;
757
-
758
- updateCallbackSpec->ProcessedItemsStatuses = processedItemsStatuses;
759
-
760
- if (options.RenamePairs.Size() != 0)
761
- updateCallbackSpec->NewNames = &newNames;
762
-
763
- CMyComPtr<IOutStream> outSeekStream;
764
- CMyComPtr<ISequentialOutStream> outStream;
765
-
766
- if (!options.StdOutMode)
767
- {
768
- FString dirPrefix;
769
- if (!GetOnlyDirPrefix(us2fs(archivePath.GetFinalPath()), dirPrefix))
770
- throw 1417161;
771
- CreateComplexDir(dirPrefix);
772
- }
773
-
774
- COutFileStream *outStreamSpec = NULL;
775
- CStdOutFileStream *stdOutFileStreamSpec = NULL;
776
- COutMultiVolStream *volStreamSpec = NULL;
777
-
778
- if (options.VolumesSizes.Size() == 0)
779
- {
780
- if (options.StdOutMode)
781
- {
782
- stdOutFileStreamSpec = new CStdOutFileStream;
783
- outStream = stdOutFileStreamSpec;
784
- }
785
- else
786
- {
787
- outStreamSpec = new COutFileStream;
788
- outSeekStream = outStreamSpec;
789
- outStream = outSeekStream;
790
- bool isOK = false;
791
- FString realPath;
792
-
793
- for (unsigned i = 0; i < (1 << 16); i++)
794
- {
795
- if (archivePath.Temp)
796
- {
797
- if (i > 0)
798
- {
799
- archivePath.TempPostfix.Empty();
800
- archivePath.TempPostfix.Add_UInt32(i);
801
- }
802
- realPath = archivePath.GetTempPath();
803
- }
804
- else
805
- realPath = us2fs(archivePath.GetFinalPath());
806
- if (outStreamSpec->Create(realPath, false))
807
- {
808
- tempFiles.Paths.Add(realPath);
809
- isOK = true;
810
- break;
811
- }
812
- if (::GetLastError() != ERROR_FILE_EXISTS)
813
- break;
814
- if (!archivePath.Temp)
815
- break;
816
- }
817
-
818
- if (!isOK)
819
- return errorInfo.SetFromLastError("cannot open file", realPath);
820
- }
821
- }
822
- else
823
- {
824
- if (options.StdOutMode)
825
- return E_FAIL;
826
- if (arc && arc->GetGlobalOffset() > 0)
827
- return E_NOTIMPL;
828
-
829
- volStreamSpec = new COutMultiVolStream;
830
- outSeekStream = volStreamSpec;
831
- outStream = outSeekStream;
832
- volStreamSpec->Sizes = options.VolumesSizes;
833
- volStreamSpec->Prefix = us2fs(archivePath.GetFinalVolPath());
834
- volStreamSpec->Prefix += '.';
835
- volStreamSpec->TempFiles = &tempFiles;
836
- volStreamSpec->Init();
837
-
838
- /*
839
- updateCallbackSpec->VolumesSizes = volumesSizes;
840
- updateCallbackSpec->VolName = archivePath.Prefix + archivePath.Name;
841
- if (!archivePath.VolExtension.IsEmpty())
842
- updateCallbackSpec->VolExt = UString('.') + archivePath.VolExtension;
843
- */
844
- }
845
-
846
- RINOK(SetProperties(outArchive, options.MethodMode.Properties));
847
-
848
- if (options.SfxMode)
849
- {
850
- CInFileStream *sfxStreamSpec = new CInFileStream;
851
- CMyComPtr<IInStream> sfxStream(sfxStreamSpec);
852
- if (!sfxStreamSpec->Open(options.SfxModule))
853
- return errorInfo.SetFromLastError("cannot open SFX module", options.SfxModule);
854
-
855
- CMyComPtr<ISequentialOutStream> sfxOutStream;
856
- COutFileStream *outStreamSpec2 = NULL;
857
- if (options.VolumesSizes.Size() == 0)
858
- sfxOutStream = outStream;
859
- else
860
- {
861
- outStreamSpec2 = new COutFileStream;
862
- sfxOutStream = outStreamSpec2;
863
- FString realPath = us2fs(archivePath.GetFinalPath());
864
- if (!outStreamSpec2->Create(realPath, false))
865
- return errorInfo.SetFromLastError("cannot open file", realPath);
866
- }
867
-
868
- {
869
- UInt64 sfxSize;
870
- RINOK(sfxStreamSpec->GetSize(&sfxSize));
871
- RINOK(callback->WriteSfx(fs2us(options.SfxModule), sfxSize));
872
- }
873
-
874
- RINOK(NCompress::CopyStream(sfxStream, sfxOutStream, NULL));
875
-
876
- if (outStreamSpec2)
877
- {
878
- RINOK(outStreamSpec2->Close());
879
- }
880
- }
881
-
882
- CMyComPtr<ISequentialOutStream> tailStream;
883
-
884
- if (options.SfxMode || !arc || arc->ArcStreamOffset == 0)
885
- tailStream = outStream;
886
- else
887
- {
888
- // Int64 globalOffset = arc->GetGlobalOffset();
889
- RINOK(arc->InStream->Seek(0, STREAM_SEEK_SET, NULL));
890
- RINOK(NCompress::CopyStream_ExactSize(arc->InStream, outStream, arc->ArcStreamOffset, NULL));
891
- if (options.StdOutMode)
892
- tailStream = outStream;
893
- else
894
- {
895
- CTailOutStream *tailStreamSpec = new CTailOutStream;
896
- tailStream = tailStreamSpec;
897
- tailStreamSpec->Stream = outSeekStream;
898
- tailStreamSpec->Offset = arc->ArcStreamOffset;
899
- tailStreamSpec->Init();
900
- }
901
- }
902
-
903
-
904
- HRESULT result = outArchive->UpdateItems(tailStream, updatePairs2.Size(), updateCallback);
905
- // callback->Finalize();
906
- RINOK(result);
907
-
908
- if (!updateCallbackSpec->AreAllFilesClosed())
909
- {
910
- errorInfo.Message = "There are unclosed input file:";
911
- errorInfo.FileNames = updateCallbackSpec->_openFiles_Paths;
912
- return E_FAIL;
913
- }
914
-
915
- if (options.SetArcMTime)
916
- {
917
- FILETIME ft;
918
- ft.dwLowDateTime = 0;
919
- ft.dwHighDateTime = 0;
920
- FOR_VECTOR (i, updatePairs2)
921
- {
922
- CUpdatePair2 &pair2 = updatePairs2[i];
923
- const FILETIME *ft2 = NULL;
924
- if (pair2.NewProps && pair2.DirIndex >= 0)
925
- ft2 = &dirItems.Items[pair2.DirIndex].MTime;
926
- else if (pair2.UseArcProps && pair2.ArcIndex >= 0)
927
- ft2 = &arcItems[pair2.ArcIndex].MTime;
928
- if (ft2)
929
- {
930
- if (::CompareFileTime(&ft, ft2) < 0)
931
- ft = *ft2;
932
- }
933
- }
934
- if (ft.dwLowDateTime != 0 || ft.dwHighDateTime != 0)
935
- {
936
- if (outStreamSpec)
937
- outStreamSpec->SetMTime(&ft);
938
- else if (volStreamSpec)
939
- volStreamSpec->SetMTime(&ft);;
940
- }
941
- }
942
-
943
- if (callback)
944
- {
945
- UInt64 size = 0;
946
- if (outStreamSpec)
947
- outStreamSpec->GetSize(&size);
948
- else if (stdOutFileStreamSpec)
949
- size = stdOutFileStreamSpec->GetSize();
950
- else
951
- size = volStreamSpec->GetSize();
952
-
953
- st.OutArcFileSize = size;
954
- }
955
-
956
- if (outStreamSpec)
957
- result = outStreamSpec->Close();
958
- else if (volStreamSpec)
959
- result = volStreamSpec->Close();
960
- return result;
961
- }
962
-
963
- bool CensorNode_CheckPath2(const NWildcard::CCensorNode &node, const CReadArcItem &item, bool &include);
964
-
965
- static bool Censor_CheckPath(const NWildcard::CCensor &censor, const CReadArcItem &item)
966
- {
967
- bool finded = false;
968
- FOR_VECTOR (i, censor.Pairs)
969
- {
970
- bool include;
971
- if (CensorNode_CheckPath2(censor.Pairs[i].Head, item, include))
972
- {
973
- if (!include)
974
- return false;
975
- finded = true;
976
- }
977
- }
978
- return finded;
979
- }
980
-
981
- static HRESULT EnumerateInArchiveItems(
982
- // bool storeStreamsMode,
983
- const NWildcard::CCensor &censor,
984
- const CArc &arc,
985
- CObjectVector<CArcItem> &arcItems)
986
- {
987
- arcItems.Clear();
988
- UInt32 numItems;
989
- IInArchive *archive = arc.Archive;
990
- RINOK(archive->GetNumberOfItems(&numItems));
991
- arcItems.ClearAndReserve(numItems);
992
-
993
- CReadArcItem item;
994
-
995
- for (UInt32 i = 0; i < numItems; i++)
996
- {
997
- CArcItem ai;
998
-
999
- RINOK(arc.GetItem(i, item));
1000
- ai.Name = item.Path;
1001
- ai.IsDir = item.IsDir;
1002
- ai.IsAltStream =
1003
- #ifdef SUPPORT_ALT_STREAMS
1004
- item.IsAltStream;
1005
- #else
1006
- false;
1007
- #endif
1008
-
1009
- /*
1010
- if (!storeStreamsMode && ai.IsAltStream)
1011
- continue;
1012
- */
1013
- ai.Censored = Censor_CheckPath(censor, item);
1014
-
1015
- RINOK(arc.GetItemMTime(i, ai.MTime, ai.MTimeDefined));
1016
- RINOK(arc.GetItemSize(i, ai.Size, ai.SizeDefined));
1017
-
1018
- {
1019
- CPropVariant prop;
1020
- RINOK(archive->GetProperty(i, kpidTimeType, &prop));
1021
- if (prop.vt == VT_UI4)
1022
- {
1023
- ai.TimeType = (int)(NFileTimeType::EEnum)prop.ulVal;
1024
- switch (ai.TimeType)
1025
- {
1026
- case NFileTimeType::kWindows:
1027
- case NFileTimeType::kUnix:
1028
- case NFileTimeType::kDOS:
1029
- break;
1030
- default:
1031
- return E_FAIL;
1032
- }
1033
- }
1034
- }
1035
-
1036
- ai.IndexInServer = i;
1037
- arcItems.AddInReserved(ai);
1038
- }
1039
- return S_OK;
1040
- }
1041
-
1042
- #if defined(_WIN32) && !defined(UNDER_CE)
1043
-
1044
- #include <mapi.h>
1045
-
1046
- #endif
1047
-
1048
- HRESULT UpdateArchive(
1049
- CCodecs *codecs,
1050
- const CObjectVector<COpenType> &types,
1051
- const UString &cmdArcPath2,
1052
- NWildcard::CCensor &censor,
1053
- CUpdateOptions &options,
1054
- CUpdateErrorInfo &errorInfo,
1055
- IOpenCallbackUI *openCallback,
1056
- IUpdateCallbackUI2 *callback,
1057
- bool needSetPath)
1058
- {
1059
- if (options.StdOutMode && options.EMailMode)
1060
- return E_FAIL;
1061
-
1062
- if (types.Size() > 1)
1063
- return E_NOTIMPL;
1064
-
1065
- bool renameMode = !options.RenamePairs.IsEmpty();
1066
- if (renameMode)
1067
- {
1068
- if (options.Commands.Size() != 1)
1069
- return E_FAIL;
1070
- }
1071
-
1072
- if (options.DeleteAfterCompressing)
1073
- {
1074
- if (options.Commands.Size() != 1)
1075
- return E_NOTIMPL;
1076
- const CActionSet &as = options.Commands[0].ActionSet;
1077
- for (int i = 2; i < NPairState::kNumValues; i++)
1078
- if (as.StateActions[i] != NPairAction::kCompress)
1079
- return E_NOTIMPL;
1080
- }
1081
-
1082
- censor.AddPathsToCensor(options.PathMode);
1083
- #ifdef _WIN32
1084
- ConvertToLongNames(censor);
1085
- #endif
1086
- censor.ExtendExclude();
1087
-
1088
-
1089
- if (options.VolumesSizes.Size() > 0 && (options.EMailMode /* || options.SfxMode */))
1090
- return E_NOTIMPL;
1091
-
1092
- if (options.SfxMode)
1093
- {
1094
- CProperty property;
1095
- property.Name = "rsfx";
1096
- options.MethodMode.Properties.Add(property);
1097
- if (options.SfxModule.IsEmpty())
1098
- {
1099
- errorInfo.Message = "SFX file is not specified";
1100
- return E_FAIL;
1101
- }
1102
- bool found = false;
1103
- if (options.SfxModule.Find(FCHAR_PATH_SEPARATOR) < 0)
1104
- {
1105
- const FString fullName = NDLL::GetModuleDirPrefix() + options.SfxModule;
1106
- if (NFind::DoesFileExist(fullName))
1107
- {
1108
- options.SfxModule = fullName;
1109
- found = true;
1110
- }
1111
- }
1112
- if (!found)
1113
- {
1114
- if (!NFind::DoesFileExist(options.SfxModule))
1115
- return errorInfo.SetFromLastError("cannot find specified SFX module", options.SfxModule);
1116
- }
1117
- }
1118
-
1119
- CArchiveLink arcLink;
1120
-
1121
-
1122
- if (needSetPath)
1123
- {
1124
- if (!options.InitFormatIndex(codecs, types, cmdArcPath2) ||
1125
- !options.SetArcPath(codecs, cmdArcPath2))
1126
- return E_NOTIMPL;
1127
- }
1128
-
1129
- UString arcPath = options.ArchivePath.GetFinalPath();
1130
-
1131
- if (!options.VolumesSizes.IsEmpty())
1132
- {
1133
- arcPath = options.ArchivePath.GetFinalVolPath();
1134
- arcPath += '.';
1135
- arcPath += "001";
1136
- }
1137
-
1138
- if (cmdArcPath2.IsEmpty())
1139
- {
1140
- if (options.MethodMode.Type.FormatIndex < 0)
1141
- throw "type of archive is not specified";
1142
- }
1143
- else
1144
- {
1145
- NFind::CFileInfo fi;
1146
- if (!fi.Find(us2fs(arcPath)))
1147
- {
1148
- if (renameMode)
1149
- throw "can't find archive";;
1150
- if (options.MethodMode.Type.FormatIndex < 0)
1151
- {
1152
- if (!options.SetArcPath(codecs, cmdArcPath2))
1153
- return E_NOTIMPL;
1154
- }
1155
- }
1156
- else
1157
- {
1158
- if (fi.IsDir())
1159
- throw "there is no such archive";
1160
- if (fi.IsDevice)
1161
- return E_NOTIMPL;
1162
-
1163
- if (!options.StdOutMode && options.UpdateArchiveItself)
1164
- if (fi.IsReadOnly())
1165
- {
1166
- errorInfo.SystemError = ERROR_ACCESS_DENIED;
1167
- errorInfo.Message = "The file is read-only";
1168
- errorInfo.FileNames.Add(us2fs(arcPath));
1169
- return errorInfo.Get_HRESULT_Error();
1170
- }
1171
-
1172
- if (options.VolumesSizes.Size() > 0)
1173
- {
1174
- errorInfo.FileNames.Add(us2fs(arcPath));
1175
- errorInfo.SystemError = (DWORD)E_NOTIMPL;
1176
- errorInfo.Message = kUpdateIsNotSupoorted_MultiVol;
1177
- return E_NOTIMPL;
1178
- }
1179
- CObjectVector<COpenType> types2;
1180
- // change it.
1181
- if (options.MethodMode.Type_Defined)
1182
- types2.Add(options.MethodMode.Type);
1183
- // We need to set Properties to open archive only in some cases (WIM archives).
1184
-
1185
- CIntVector excl;
1186
- COpenOptions op;
1187
- #ifndef _SFX
1188
- op.props = &options.MethodMode.Properties;
1189
- #endif
1190
- op.codecs = codecs;
1191
- op.types = &types2;
1192
- op.excludedFormats = &excl;
1193
- op.stdInMode = false;
1194
- op.stream = NULL;
1195
- op.filePath = arcPath;
1196
-
1197
- RINOK(callback->StartOpenArchive(arcPath));
1198
-
1199
- HRESULT result = arcLink.Open_Strict(op, openCallback);
1200
-
1201
- if (result == E_ABORT)
1202
- return result;
1203
-
1204
- HRESULT res2 = callback->OpenResult(codecs, arcLink, arcPath, result);
1205
- /*
1206
- if (result == S_FALSE)
1207
- return E_FAIL;
1208
- */
1209
- RINOK(res2);
1210
- RINOK(result);
1211
-
1212
- if (arcLink.VolumePaths.Size() > 1)
1213
- {
1214
- errorInfo.SystemError = (DWORD)E_NOTIMPL;
1215
- errorInfo.Message = kUpdateIsNotSupoorted_MultiVol;
1216
- return E_NOTIMPL;
1217
- }
1218
-
1219
- CArc &arc = arcLink.Arcs.Back();
1220
- arc.MTimeDefined = !fi.IsDevice;
1221
- arc.MTime = fi.MTime;
1222
-
1223
- if (arc.ErrorInfo.ThereIsTail)
1224
- {
1225
- errorInfo.SystemError = (DWORD)E_NOTIMPL;
1226
- errorInfo.Message = "There is some data block after the end of the archive";
1227
- return E_NOTIMPL;
1228
- }
1229
- if (options.MethodMode.Type.FormatIndex < 0)
1230
- {
1231
- options.MethodMode.Type.FormatIndex = arcLink.GetArc()->FormatIndex;
1232
- if (!options.SetArcPath(codecs, cmdArcPath2))
1233
- return E_NOTIMPL;
1234
- }
1235
- }
1236
- }
1237
-
1238
- if (options.MethodMode.Type.FormatIndex < 0)
1239
- {
1240
- options.MethodMode.Type.FormatIndex = codecs->FindFormatForArchiveType((UString)kDefaultArcType);
1241
- if (options.MethodMode.Type.FormatIndex < 0)
1242
- return E_NOTIMPL;
1243
- }
1244
-
1245
- bool thereIsInArchive = arcLink.IsOpen;
1246
- if (!thereIsInArchive && renameMode)
1247
- return E_FAIL;
1248
-
1249
- CDirItems dirItems;
1250
- dirItems.Callback = callback;
1251
-
1252
- CDirItem parentDirItem;
1253
- CDirItem *parentDirItem_Ptr = NULL;
1254
-
1255
- /*
1256
- FStringVector requestedPaths;
1257
- FStringVector *requestedPaths_Ptr = NULL;
1258
- if (options.DeleteAfterCompressing)
1259
- requestedPaths_Ptr = &requestedPaths;
1260
- */
1261
-
1262
- if (options.StdInMode)
1263
- {
1264
- CDirItem di;
1265
- di.Name = options.StdInFileName;
1266
- di.Size = (UInt64)(Int64)-1;
1267
- di.Attrib = 0;
1268
- NTime::GetCurUtcFileTime(di.MTime);
1269
- di.CTime = di.ATime = di.MTime;
1270
- dirItems.Items.Add(di);
1271
- }
1272
- else
1273
- {
1274
- bool needScanning = false;
1275
-
1276
- if (!renameMode)
1277
- FOR_VECTOR (i, options.Commands)
1278
- if (options.Commands[i].ActionSet.NeedScanning())
1279
- needScanning = true;
1280
-
1281
- if (needScanning)
1282
- {
1283
- RINOK(callback->StartScanning());
1284
-
1285
- dirItems.SymLinks = options.SymLinks.Val;
1286
-
1287
- #if defined(_WIN32) && !defined(UNDER_CE)
1288
- dirItems.ReadSecure = options.NtSecurity.Val;
1289
- #endif
1290
-
1291
- dirItems.ScanAltStreams = options.AltStreams.Val;
1292
-
1293
- HRESULT res = EnumerateItems(censor,
1294
- options.PathMode,
1295
- options.AddPathPrefix,
1296
- dirItems);
1297
-
1298
- if (res != S_OK)
1299
- {
1300
- if (res != E_ABORT)
1301
- errorInfo.Message = "Scanning error";
1302
- return res;
1303
- }
1304
-
1305
- RINOK(callback->FinishScanning(dirItems.Stat));
1306
-
1307
- if (censor.Pairs.Size() == 1)
1308
- {
1309
- NFind::CFileInfo fi;
1310
- FString prefix = us2fs(censor.Pairs[0].Prefix);
1311
- prefix += '.';
1312
- // UString prefix = censor.Pairs[0].Prefix;
1313
- /*
1314
- if (prefix.Back() == WCHAR_PATH_SEPARATOR)
1315
- {
1316
- prefix.DeleteBack();
1317
- }
1318
- */
1319
- if (fi.Find(prefix))
1320
- if (fi.IsDir())
1321
- {
1322
- parentDirItem.Size = fi.Size;
1323
- parentDirItem.CTime = fi.CTime;
1324
- parentDirItem.ATime = fi.ATime;
1325
- parentDirItem.MTime = fi.MTime;
1326
- parentDirItem.Attrib = fi.Attrib;
1327
- parentDirItem_Ptr = &parentDirItem;
1328
-
1329
- int secureIndex = -1;
1330
- #if defined(_WIN32) && !defined(UNDER_CE)
1331
- if (options.NtSecurity.Val)
1332
- dirItems.AddSecurityItem(prefix, secureIndex);
1333
- #endif
1334
- parentDirItem.SecureIndex = secureIndex;
1335
-
1336
- parentDirItem_Ptr = &parentDirItem;
1337
- }
1338
- }
1339
- }
1340
- }
1341
-
1342
- FString tempDirPrefix;
1343
- bool usesTempDir = false;
1344
-
1345
- #ifdef _WIN32
1346
- CTempDir tempDirectory;
1347
- if (options.EMailMode && options.EMailRemoveAfter)
1348
- {
1349
- tempDirectory.Create(kTempFolderPrefix);
1350
- tempDirPrefix = tempDirectory.GetPath();
1351
- NormalizeDirPathPrefix(tempDirPrefix);
1352
- usesTempDir = true;
1353
- }
1354
- #endif
1355
-
1356
- CTempFiles tempFiles;
1357
-
1358
- bool createTempFile = false;
1359
-
1360
- if (!options.StdOutMode && options.UpdateArchiveItself)
1361
- {
1362
- CArchivePath &ap = options.Commands[0].ArchivePath;
1363
- ap = options.ArchivePath;
1364
- // if ((archive != 0 && !usesTempDir) || !options.WorkingDir.IsEmpty())
1365
- if ((thereIsInArchive || !options.WorkingDir.IsEmpty()) && !usesTempDir && options.VolumesSizes.Size() == 0)
1366
- {
1367
- createTempFile = true;
1368
- ap.Temp = true;
1369
- if (!options.WorkingDir.IsEmpty())
1370
- ap.TempPrefix = options.WorkingDir;
1371
- else
1372
- ap.TempPrefix = us2fs(ap.Prefix);
1373
- NormalizeDirPathPrefix(ap.TempPrefix);
1374
- }
1375
- }
1376
-
1377
- unsigned ci;
1378
-
1379
-
1380
- // self including protection
1381
- if (options.DeleteAfterCompressing)
1382
- {
1383
- for (ci = 0; ci < options.Commands.Size(); ci++)
1384
- {
1385
- CArchivePath &ap = options.Commands[ci].ArchivePath;
1386
- const FString path = us2fs(ap.GetFinalPath());
1387
- // maybe we must compare absolute paths path here
1388
- FOR_VECTOR (i, dirItems.Items)
1389
- {
1390
- const FString phyPath = dirItems.GetPhyPath(i);
1391
- if (phyPath == path)
1392
- {
1393
- UString s;
1394
- s = "It is not allowed to include archive to itself";
1395
- s.Add_LF();
1396
- s += path;
1397
- throw s;
1398
- }
1399
- }
1400
- }
1401
- }
1402
-
1403
-
1404
- for (ci = 0; ci < options.Commands.Size(); ci++)
1405
- {
1406
- CArchivePath &ap = options.Commands[ci].ArchivePath;
1407
- if (usesTempDir)
1408
- {
1409
- // Check it
1410
- ap.Prefix = fs2us(tempDirPrefix);
1411
- // ap.Temp = true;
1412
- // ap.TempPrefix = tempDirPrefix;
1413
- }
1414
- if (!options.StdOutMode &&
1415
- (ci > 0 || !createTempFile))
1416
- {
1417
- const FString path = us2fs(ap.GetFinalPath());
1418
- if (NFind::DoesFileOrDirExist(path))
1419
- {
1420
- errorInfo.SystemError = ERROR_FILE_EXISTS;
1421
- errorInfo.Message = "The file already exists";
1422
- errorInfo.FileNames.Add(path);
1423
- return errorInfo.Get_HRESULT_Error();
1424
- }
1425
- }
1426
- }
1427
-
1428
- CObjectVector<CArcItem> arcItems;
1429
- if (thereIsInArchive)
1430
- {
1431
- RINOK(EnumerateInArchiveItems(
1432
- // options.StoreAltStreams,
1433
- censor, arcLink.Arcs.Back(), arcItems));
1434
- }
1435
-
1436
- /*
1437
- FStringVector processedFilePaths;
1438
- FStringVector *processedFilePaths_Ptr = NULL;
1439
- if (options.DeleteAfterCompressing)
1440
- processedFilePaths_Ptr = &processedFilePaths;
1441
- */
1442
-
1443
- CByteBuffer processedItems;
1444
- if (options.DeleteAfterCompressing)
1445
- {
1446
- unsigned num = dirItems.Items.Size();
1447
- processedItems.Alloc(num);
1448
- for (unsigned i = 0; i < num; i++)
1449
- processedItems[i] = 0;
1450
- }
1451
-
1452
- /*
1453
- #ifndef _NO_CRYPTO
1454
- if (arcLink.PasswordWasAsked)
1455
- {
1456
- // We set password, if open have requested password
1457
- RINOK(callback->SetPassword(arcLink.Password));
1458
- }
1459
- #endif
1460
- */
1461
-
1462
- for (ci = 0; ci < options.Commands.Size(); ci++)
1463
- {
1464
- const CArc *arc = thereIsInArchive ? arcLink.GetArc() : NULL;
1465
- CUpdateArchiveCommand &command = options.Commands[ci];
1466
- UString name;
1467
- bool isUpdating;
1468
-
1469
- if (options.StdOutMode)
1470
- {
1471
- name = "stdout";
1472
- isUpdating = thereIsInArchive;
1473
- }
1474
- else
1475
- {
1476
- name = command.ArchivePath.GetFinalPath();
1477
- isUpdating = (ci == 0 && options.UpdateArchiveItself && thereIsInArchive);
1478
- }
1479
-
1480
- RINOK(callback->StartArchive(name, isUpdating))
1481
-
1482
- CFinishArchiveStat st;
1483
-
1484
- RINOK(Compress(options,
1485
- isUpdating,
1486
- codecs,
1487
- command.ActionSet,
1488
- arc,
1489
- command.ArchivePath,
1490
- arcItems,
1491
- options.DeleteAfterCompressing ? (Byte *)processedItems : NULL,
1492
-
1493
- dirItems,
1494
- parentDirItem_Ptr,
1495
-
1496
- tempFiles,
1497
- errorInfo, callback, st));
1498
-
1499
- RINOK(callback->FinishArchive(st));
1500
- }
1501
-
1502
-
1503
- if (thereIsInArchive)
1504
- {
1505
- RINOK(arcLink.Close());
1506
- arcLink.Release();
1507
- }
1508
-
1509
- tempFiles.Paths.Clear();
1510
- if (createTempFile)
1511
- {
1512
- try
1513
- {
1514
- CArchivePath &ap = options.Commands[0].ArchivePath;
1515
- const FString &tempPath = ap.GetTempPath();
1516
-
1517
- // DWORD attrib = 0;
1518
- if (thereIsInArchive)
1519
- {
1520
- // attrib = NFind::GetFileAttrib(us2fs(arcPath));
1521
- if (!DeleteFileAlways(us2fs(arcPath)))
1522
- return errorInfo.SetFromLastError("cannot delete the file", us2fs(arcPath));
1523
- }
1524
-
1525
- if (!MyMoveFile(tempPath, us2fs(arcPath)))
1526
- {
1527
- errorInfo.SetFromLastError("cannot move the file", tempPath);
1528
- errorInfo.FileNames.Add(us2fs(arcPath));
1529
- return errorInfo.Get_HRESULT_Error();
1530
- }
1531
-
1532
- /*
1533
- if (attrib != INVALID_FILE_ATTRIBUTES && (attrib & FILE_ATTRIBUTE_READONLY))
1534
- {
1535
- DWORD attrib2 = NFind::GetFileAttrib(us2fs(arcPath));
1536
- if (attrib2 != INVALID_FILE_ATTRIBUTES)
1537
- NDir::SetFileAttrib(us2fs(arcPath), attrib2 | FILE_ATTRIBUTE_READONLY);
1538
- }
1539
- */
1540
- }
1541
- catch(...)
1542
- {
1543
- throw;
1544
- }
1545
- }
1546
-
1547
-
1548
- #if defined(_WIN32) && !defined(UNDER_CE)
1549
-
1550
- if (options.EMailMode)
1551
- {
1552
- NDLL::CLibrary mapiLib;
1553
- if (!mapiLib.Load(FTEXT("Mapi32.dll")))
1554
- {
1555
- errorInfo.SetFromLastError("cannot load Mapi32.dll");
1556
- return errorInfo.Get_HRESULT_Error();
1557
- }
1558
-
1559
- /*
1560
- LPMAPISENDDOCUMENTS fnSend = (LPMAPISENDDOCUMENTS)mapiLib.GetProc("MAPISendDocuments");
1561
- if (fnSend == 0)
1562
- {
1563
- errorInfo.SetFromLastError)("7-Zip cannot find MAPISendDocuments function");
1564
- return errorInfo.Get_HRESULT_Error();
1565
- }
1566
- */
1567
-
1568
- LPMAPISENDMAIL sendMail = (LPMAPISENDMAIL)mapiLib.GetProc("MAPISendMail");
1569
- if (sendMail == 0)
1570
- {
1571
- errorInfo.SetFromLastError("7-Zip cannot find MAPISendMail function");
1572
- return errorInfo.Get_HRESULT_Error();;
1573
- }
1574
-
1575
- FStringVector fullPaths;
1576
- unsigned i;
1577
-
1578
- for (i = 0; i < options.Commands.Size(); i++)
1579
- {
1580
- CArchivePath &ap = options.Commands[i].ArchivePath;
1581
- FString finalPath = us2fs(ap.GetFinalPath());
1582
- FString arcPath2;
1583
- if (!MyGetFullPathName(finalPath, arcPath2))
1584
- return errorInfo.SetFromLastError("GetFullPathName error", finalPath);
1585
- fullPaths.Add(arcPath2);
1586
- }
1587
-
1588
- CCurrentDirRestorer curDirRestorer;
1589
-
1590
- AStringVector paths;
1591
- AStringVector names;
1592
-
1593
- for (i = 0; i < fullPaths.Size(); i++)
1594
- {
1595
- const UString arcPath2 = fs2us(fullPaths[i]);
1596
- const UString fileName = ExtractFileNameFromPath(arcPath2);
1597
- paths.Add(GetAnsiString(arcPath2));
1598
- names.Add(GetAnsiString(fileName));
1599
- // const AString path (GetAnsiString(arcPath2));
1600
- // const AString name (GetAnsiString(fileName));
1601
- // Warning!!! MAPISendDocuments function changes Current directory
1602
- // fnSend(0, ";", (LPSTR)(LPCSTR)path, (LPSTR)(LPCSTR)name, 0);
1603
- }
1604
-
1605
- CRecordVector<MapiFileDesc> files;
1606
- files.ClearAndSetSize(paths.Size());
1607
-
1608
- for (i = 0; i < paths.Size(); i++)
1609
- {
1610
- MapiFileDesc &f = files[i];
1611
- memset(&f, 0, sizeof(f));
1612
- f.nPosition = 0xFFFFFFFF;
1613
- f.lpszPathName = (char *)(const char *)paths[i];
1614
- f.lpszFileName = (char *)(const char *)names[i];
1615
- }
1616
-
1617
- {
1618
- MapiMessage m;
1619
- memset(&m, 0, sizeof(m));
1620
- m.nFileCount = files.Size();
1621
- m.lpFiles = &files.Front();
1622
-
1623
- const AString addr (GetAnsiString(options.EMailAddress));
1624
- MapiRecipDesc rec;
1625
- if (!addr.IsEmpty())
1626
- {
1627
- memset(&rec, 0, sizeof(rec));
1628
- rec.ulRecipClass = MAPI_TO;
1629
- rec.lpszAddress = (char *)(const char *)addr;
1630
- m.nRecipCount = 1;
1631
- m.lpRecips = &rec;
1632
- }
1633
-
1634
- sendMail((LHANDLE)0, 0, &m, MAPI_DIALOG, 0);
1635
- }
1636
- }
1637
-
1638
- #endif
1639
-
1640
- if (options.DeleteAfterCompressing)
1641
- {
1642
- CRecordVector<CDirPathSortPair> pairs;
1643
- FStringVector foldersNames;
1644
-
1645
- unsigned i;
1646
-
1647
- for (i = 0; i < dirItems.Items.Size(); i++)
1648
- {
1649
- const CDirItem &dirItem = dirItems.Items[i];
1650
- const FString phyPath = dirItems.GetPhyPath(i);
1651
- if (dirItem.IsDir())
1652
- {
1653
- CDirPathSortPair pair;
1654
- pair.Index = i;
1655
- pair.SetNumSlashes(phyPath);
1656
- pairs.Add(pair);
1657
- }
1658
- else
1659
- {
1660
- if (processedItems[i] != 0 || dirItem.Size == 0)
1661
- {
1662
- NFind::CFileInfo fileInfo;
1663
- if (fileInfo.Find(phyPath))
1664
- {
1665
- // maybe we must exclude also files with archive name: "a a.7z * -sdel"
1666
- if (fileInfo.Size == dirItem.Size
1667
- && CompareFileTime(&fileInfo.MTime, &dirItem.MTime) == 0
1668
- && CompareFileTime(&fileInfo.CTime, &dirItem.CTime) == 0)
1669
- {
1670
- RINOK(callback->DeletingAfterArchiving(phyPath, false));
1671
- DeleteFileAlways(phyPath);
1672
- }
1673
- }
1674
- }
1675
- else
1676
- {
1677
- // file was skipped
1678
- /*
1679
- errorInfo.SystemError = 0;
1680
- errorInfo.Message = "file was not processed";
1681
- errorInfo.FileName = phyPath;
1682
- return E_FAIL;
1683
- */
1684
- }
1685
- }
1686
- }
1687
-
1688
- pairs.Sort2();
1689
-
1690
- for (i = 0; i < pairs.Size(); i++)
1691
- {
1692
- const FString phyPath = dirItems.GetPhyPath(pairs[i].Index);
1693
- if (NFind::DoesDirExist(phyPath))
1694
- {
1695
- RINOK(callback->DeletingAfterArchiving(phyPath, true));
1696
- RemoveDir(phyPath);
1697
- }
1698
- }
1699
-
1700
- RINOK(callback->FinishDeletingAfterArchiving());
1701
- }
1702
-
1703
- return S_OK;
1704
- }