exiftool-vendored.exe 12.82.0 → 12.84.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.
- package/README.md +6 -0
- package/bin/exiftool.exe +0 -0
- package/bin/exiftool_files/Changes +37 -0
- package/bin/exiftool_files/Licenses_Strawberry_Perl.zip +0 -0
- package/bin/exiftool_files/README +3 -2
- package/bin/exiftool_files/build_geolocation +872 -0
- package/bin/exiftool_files/config_files/example.config +2 -2
- package/bin/exiftool_files/exiftool.pl +28 -6
- package/bin/exiftool_files/fmt_files/gpx.fmt +2 -1
- package/bin/exiftool_files/fmt_files/gpx_wpt.fmt +2 -1
- package/bin/exiftool_files/lib/Archive/Zip/Archive.pm +399 -65
- package/bin/exiftool_files/lib/Archive/Zip/DirectoryMember.pm +1 -1
- package/bin/exiftool_files/lib/Archive/Zip/FileMember.pm +1 -1
- package/bin/exiftool_files/lib/Archive/Zip/Member.pm +499 -195
- package/bin/exiftool_files/lib/Archive/Zip/NewFileMember.pm +1 -1
- package/bin/exiftool_files/lib/Archive/Zip/StringMember.pm +2 -2
- package/bin/exiftool_files/lib/Archive/Zip/ZipFileMember.pm +79 -20
- package/bin/exiftool_files/lib/Archive/Zip.pm +179 -29
- package/bin/exiftool_files/lib/AutoLoader.pm +453 -0
- package/bin/exiftool_files/lib/B/Deparse.pm +209 -137
- package/bin/exiftool_files/lib/B.pm +1 -1
- package/bin/exiftool_files/lib/Benchmark.pm +1123 -0
- package/bin/exiftool_files/lib/Class/Struct.pm +2 -2
- package/bin/exiftool_files/lib/Compress/Raw/Bzip2.pm +14 -9
- package/bin/exiftool_files/lib/Compress/Raw/Lzma.pm +982 -0
- package/bin/exiftool_files/lib/Compress/Raw/Zlib.pm +91 -86
- package/bin/exiftool_files/lib/Compress/Zlib.pm +105 -100
- package/bin/exiftool_files/lib/Config.pm +9 -9
- package/bin/exiftool_files/lib/Config_heavy.pl +36 -33
- package/bin/exiftool_files/lib/CryptX.pm +2 -82
- package/bin/exiftool_files/lib/Data/Dumper.pm +2 -2
- package/bin/exiftool_files/lib/Digest/MD5.pm +12 -9
- package/bin/exiftool_files/lib/Digest/Perl/MD5.pm +1 -191
- package/bin/exiftool_files/lib/Digest/base.pm +26 -20
- package/bin/exiftool_files/lib/DynaLoader.pm +7 -4
- package/bin/exiftool_files/lib/Encode.pm +3 -3
- package/bin/exiftool_files/lib/Errno.pm +13 -13
- package/bin/exiftool_files/lib/Exporter/Heavy.pm +2 -2
- package/bin/exiftool_files/lib/Exporter.pm +1 -1
- package/bin/exiftool_files/lib/ExtUtils/Command/MM.pm +323 -0
- package/bin/exiftool_files/lib/ExtUtils/Command.pm +382 -0
- package/bin/exiftool_files/lib/File/Find.pm +1 -1
- package/bin/exiftool_files/lib/File/Glob.pm +1 -8
- package/bin/exiftool_files/lib/File/GlobMapper.pm +2 -2
- package/bin/exiftool_files/lib/File/HomeDir/Darwin/Carbon.pm +2 -40
- package/bin/exiftool_files/lib/File/HomeDir/Darwin/Cocoa.pm +2 -34
- package/bin/exiftool_files/lib/File/HomeDir/Darwin.pm +2 -28
- package/bin/exiftool_files/lib/File/HomeDir/Driver.pm +2 -35
- package/bin/exiftool_files/lib/File/HomeDir/FreeDesktop.pm +2 -62
- package/bin/exiftool_files/lib/File/HomeDir/MacOS9.pm +2 -53
- package/bin/exiftool_files/lib/File/HomeDir/Test.pm +2 -43
- package/bin/exiftool_files/lib/File/HomeDir/Unix.pm +2 -53
- package/bin/exiftool_files/lib/File/HomeDir/Windows.pm +2 -69
- package/bin/exiftool_files/lib/File/HomeDir.pm +5 -416
- package/bin/exiftool_files/lib/File/Path.pm +3 -3
- package/bin/exiftool_files/lib/File/Spec/Win32.pm +2 -2
- package/bin/exiftool_files/lib/File/Temp.pm +70 -35
- package/bin/exiftool_files/lib/File/Which.pm +1 -240
- package/bin/exiftool_files/lib/File/stat.pm +3 -2
- package/bin/exiftool_files/lib/IO/Compress/Adapter/Bzip2.pm +16 -17
- package/bin/exiftool_files/lib/IO/Compress/Adapter/Deflate.pm +19 -20
- package/bin/exiftool_files/lib/IO/Compress/Base/Common.pm +5 -5
- package/bin/exiftool_files/lib/IO/Compress/Base.pm +35 -26
- package/bin/exiftool_files/lib/IO/Compress/Brotli.pm +159 -0
- package/bin/exiftool_files/lib/IO/Compress/Bzip2.pm +50 -25
- package/bin/exiftool_files/lib/IO/Compress/Gzip/Constants.pm +6 -6
- package/bin/exiftool_files/lib/IO/Compress/Gzip.pm +58 -32
- package/bin/exiftool_files/lib/IO/Compress/RawDeflate.pm +63 -38
- package/bin/exiftool_files/lib/IO/Compress/Zlib/Extra.pm +20 -20
- package/bin/exiftool_files/lib/IO/Dir.pm +1 -1
- package/bin/exiftool_files/lib/IO/File.pm +1 -1
- package/bin/exiftool_files/lib/IO/Handle.pm +1 -21
- package/bin/exiftool_files/lib/IO/Pipe.pm +1 -1
- package/bin/exiftool_files/lib/IO/Seekable.pm +1 -1
- package/bin/exiftool_files/lib/IO/Select.pm +16 -2
- package/bin/exiftool_files/lib/IO/Socket/INET.pm +14 -9
- package/bin/exiftool_files/lib/IO/Socket/UNIX.pm +17 -1
- package/bin/exiftool_files/lib/IO/Socket.pm +474 -126
- package/bin/exiftool_files/lib/IO/String.pm +425 -0
- package/bin/exiftool_files/lib/IO/Uncompress/Adapter/Inflate.pm +13 -14
- package/bin/exiftool_files/lib/IO/Uncompress/Base.pm +142 -132
- package/bin/exiftool_files/lib/IO/Uncompress/Brotli.pm +119 -0
- package/bin/exiftool_files/lib/IO/Uncompress/Gunzip.pm +43 -37
- package/bin/exiftool_files/lib/IO/Uncompress/RawInflate.pm +49 -43
- package/bin/exiftool_files/lib/IO.pm +2 -2
- package/bin/exiftool_files/lib/Image/ExifTool/Apple.pm +51 -7
- package/bin/exiftool_files/lib/Image/ExifTool/BuildTagLookup.pm +5 -2
- package/bin/exiftool_files/lib/Image/ExifTool/CanonVRD.pm +18 -5
- package/bin/exiftool_files/lib/Image/ExifTool/DJI.pm +29 -0
- package/bin/exiftool_files/lib/Image/ExifTool/Exif.pm +19 -2
- package/bin/exiftool_files/lib/Image/ExifTool/GM.pm +17 -8
- package/bin/exiftool_files/lib/Image/ExifTool/Geolocation.dat +0 -0
- package/bin/exiftool_files/lib/Image/ExifTool/Geolocation.pm +163 -101
- package/bin/exiftool_files/lib/Image/ExifTool/Geotag.pm +18 -10
- package/bin/exiftool_files/lib/Image/ExifTool/Nikon.pm +7 -6
- package/bin/exiftool_files/lib/Image/ExifTool/QuickTime.pm +6 -1
- package/bin/exiftool_files/lib/Image/ExifTool/QuickTimeStream.pl +5 -0
- package/bin/exiftool_files/lib/Image/ExifTool/Sony.pm +15 -6
- package/bin/exiftool_files/lib/Image/ExifTool/TagLookup.pm +18 -9
- package/bin/exiftool_files/lib/Image/ExifTool/TagNames.pod +24 -5
- package/bin/exiftool_files/lib/Image/ExifTool/WriteQuickTime.pl +2 -1
- package/bin/exiftool_files/lib/Image/ExifTool/Writer.pl +165 -132
- package/bin/exiftool_files/lib/Image/ExifTool/XMP2.pl +3 -0
- package/bin/exiftool_files/lib/Image/ExifTool.pm +45 -23
- package/bin/exiftool_files/lib/Image/ExifTool.pod +23 -14
- package/bin/exiftool_files/lib/List/Util.pm +97 -8
- package/bin/exiftool_files/lib/MIME/Base64.pm +5 -5
- package/bin/exiftool_files/lib/MIME/Charset/_Compat.pm +106 -0
- package/bin/exiftool_files/lib/MIME/Charset.pm +1303 -0
- package/bin/exiftool_files/lib/Math/BigFloat.pm +444 -27
- package/bin/exiftool_files/lib/Math/BigInt/Calc.pm +296 -313
- package/bin/exiftool_files/lib/Math/BigInt/FastCalc.pm +1 -1
- package/bin/exiftool_files/lib/Math/BigInt/GMP.pm +2 -115
- package/bin/exiftool_files/lib/Math/BigInt/LTM.pm +2 -24
- package/bin/exiftool_files/lib/Math/BigInt/Lib.pm +61 -32
- package/bin/exiftool_files/lib/Math/BigInt.pm +292 -107
- package/bin/exiftool_files/lib/POSIX.pm +1 -1
- package/bin/exiftool_files/lib/PerlIO/scalar.pm +41 -0
- package/bin/exiftool_files/lib/PerlIO.pm +397 -0
- package/bin/exiftool_files/lib/Portable/CPAN.pm +94 -94
- package/bin/exiftool_files/lib/Portable/Config.pm +94 -94
- package/bin/exiftool_files/lib/Portable/FileSpec.pm +180 -180
- package/bin/exiftool_files/lib/Portable/HomeDir.pm +110 -110
- package/bin/exiftool_files/lib/Portable/LoadYaml.pm +430 -430
- package/bin/exiftool_files/lib/Portable/minicpan.pm +55 -55
- package/bin/exiftool_files/lib/Portable.pm +246 -320
- package/bin/exiftool_files/lib/Scalar/Util.pm +9 -4
- package/bin/exiftool_files/lib/Socket.pm +16 -12
- package/bin/exiftool_files/lib/Storable.pm +1444 -1441
- package/bin/exiftool_files/lib/TAP/Base.pm +133 -0
- package/bin/exiftool_files/lib/TAP/Formatter/Base.pm +467 -0
- package/bin/exiftool_files/lib/TAP/Formatter/Color.pm +116 -0
- package/bin/exiftool_files/lib/TAP/Formatter/Console/ParallelSession.pm +201 -0
- package/bin/exiftool_files/lib/TAP/Formatter/Console/Session.pm +205 -0
- package/bin/exiftool_files/lib/TAP/Formatter/Console.pm +100 -0
- package/bin/exiftool_files/lib/TAP/Formatter/File/Session.pm +95 -0
- package/bin/exiftool_files/lib/TAP/Formatter/File.pm +56 -0
- package/bin/exiftool_files/lib/TAP/Formatter/Session.pm +220 -0
- package/bin/exiftool_files/lib/TAP/Harness/Beyond.pod +426 -0
- package/bin/exiftool_files/lib/TAP/Harness/Env.pm +215 -0
- package/bin/exiftool_files/lib/TAP/Harness.pm +1054 -0
- package/bin/exiftool_files/lib/TAP/Object.pm +155 -0
- package/bin/exiftool_files/lib/TAP/Parser/Aggregator.pm +414 -0
- package/bin/exiftool_files/lib/TAP/Parser/Grammar.pm +584 -0
- package/bin/exiftool_files/lib/TAP/Parser/Iterator/Array.pm +100 -0
- package/bin/exiftool_files/lib/TAP/Parser/Iterator/Process.pm +378 -0
- package/bin/exiftool_files/lib/TAP/Parser/Iterator/Stream.pm +116 -0
- package/bin/exiftool_files/lib/TAP/Parser/Iterator.pm +162 -0
- package/bin/exiftool_files/lib/TAP/Parser/IteratorFactory.pm +339 -0
- package/bin/exiftool_files/lib/TAP/Parser/Multiplexer.pm +194 -0
- package/bin/exiftool_files/lib/TAP/Parser/Result/Bailout.pm +62 -0
- package/bin/exiftool_files/lib/TAP/Parser/Result/Comment.pm +60 -0
- package/bin/exiftool_files/lib/TAP/Parser/Result/Plan.pm +119 -0
- package/bin/exiftool_files/lib/TAP/Parser/Result/Pragma.pm +62 -0
- package/bin/exiftool_files/lib/TAP/Parser/Result/Test.pm +271 -0
- package/bin/exiftool_files/lib/TAP/Parser/Result/Unknown.pm +48 -0
- package/bin/exiftool_files/lib/TAP/Parser/Result/Version.pm +62 -0
- package/bin/exiftool_files/lib/TAP/Parser/Result/YAML.pm +61 -0
- package/bin/exiftool_files/lib/TAP/Parser/Result.pm +297 -0
- package/bin/exiftool_files/lib/TAP/Parser/ResultFactory.pm +183 -0
- package/bin/exiftool_files/lib/TAP/Parser/Scheduler/Job.pm +127 -0
- package/bin/exiftool_files/lib/TAP/Parser/Scheduler/Spinner.pm +61 -0
- package/bin/exiftool_files/lib/TAP/Parser/Scheduler.pm +448 -0
- package/bin/exiftool_files/lib/TAP/Parser/Source.pm +381 -0
- package/bin/exiftool_files/lib/TAP/Parser/SourceHandler/Executable.pm +184 -0
- package/bin/exiftool_files/lib/TAP/Parser/SourceHandler/File.pm +136 -0
- package/bin/exiftool_files/lib/TAP/Parser/SourceHandler/Handle.pm +124 -0
- package/bin/exiftool_files/lib/TAP/Parser/SourceHandler/Perl.pm +370 -0
- package/bin/exiftool_files/lib/TAP/Parser/SourceHandler/RawTAP.pm +130 -0
- package/bin/exiftool_files/lib/TAP/Parser/SourceHandler.pm +191 -0
- package/bin/exiftool_files/lib/TAP/Parser/YAMLish/Reader.pm +332 -0
- package/bin/exiftool_files/lib/TAP/Parser/YAMLish/Writer.pm +254 -0
- package/bin/exiftool_files/lib/TAP/Parser.pm +1931 -0
- package/bin/exiftool_files/lib/Test/Builder/Formatter.pm +107 -0
- package/bin/exiftool_files/lib/Test/Builder/IO/Scalar.pm +659 -0
- package/bin/exiftool_files/lib/Test/Builder/Module.pm +182 -0
- package/bin/exiftool_files/lib/Test/Builder/Tester/Color.pm +51 -0
- package/bin/exiftool_files/lib/Test/Builder/Tester.pm +675 -0
- package/bin/exiftool_files/lib/Test/Builder/TodoDiag.pm +68 -0
- package/bin/exiftool_files/lib/Test/Builder.pm +2653 -0
- package/bin/exiftool_files/lib/Test/Harness.pm +618 -0
- package/bin/exiftool_files/lib/Test/More.pm +1997 -0
- package/bin/exiftool_files/lib/Test/Simple.pm +220 -0
- package/bin/exiftool_files/lib/Test/Tester/Capture.pm +241 -0
- package/bin/exiftool_files/lib/Test/Tester/CaptureRunner.pm +79 -0
- package/bin/exiftool_files/lib/Test/Tester/Delegate.pm +45 -0
- package/bin/exiftool_files/lib/Test/Tester.pm +695 -0
- package/bin/exiftool_files/lib/Test/Tutorial.pod +618 -0
- package/bin/exiftool_files/lib/Test/use/ok.pm +64 -0
- package/bin/exiftool_files/lib/Text/ParseWords.pm +303 -0
- package/bin/exiftool_files/lib/Tie/StdHandle.pm +2 -2
- package/bin/exiftool_files/lib/Time/HiRes.pm +73 -68
- package/bin/exiftool_files/lib/Time/Local.pm +82 -35
- package/bin/exiftool_files/lib/Time/Piece.pm +19 -4
- package/bin/exiftool_files/lib/Time/Seconds.pm +1 -1
- package/bin/exiftool_files/lib/UNIVERSAL.pm +203 -0
- package/bin/exiftool_files/lib/Unicode/GCString.pm +60 -0
- package/bin/exiftool_files/lib/Unicode/LineBreak/Constants.pm +68 -0
- package/bin/exiftool_files/lib/Unicode/LineBreak.pm +248 -0
- package/bin/exiftool_files/lib/Win32/API/Struct.pm +1 -177
- package/bin/exiftool_files/lib/Win32/API/Type.pm +1 -100
- package/bin/exiftool_files/lib/Win32/API.pm +1 -830
- package/bin/exiftool_files/lib/Win32/FindFile.pm +2 -123
- package/bin/exiftool_files/lib/Win32.pm +213 -89
- package/bin/exiftool_files/lib/Win32API/File.pm +1 -1
- package/bin/exiftool_files/lib/auto/B/B.xs.dll +0 -0
- package/bin/exiftool_files/lib/auto/Compress/Raw/Bzip2/Bzip2.xs.dll +0 -0
- package/bin/exiftool_files/lib/auto/Compress/Raw/Lzma/Lzma.xs.dll +0 -0
- package/bin/exiftool_files/lib/auto/Compress/Raw/Lzma/autosplit.ix +3 -0
- package/bin/exiftool_files/lib/auto/Compress/Raw/Zlib/Zlib.xs.dll +0 -0
- package/bin/exiftool_files/lib/auto/CryptX/CryptX.xs.dll +0 -0
- package/bin/exiftool_files/lib/auto/Cwd/Cwd.xs.dll +0 -0
- package/bin/exiftool_files/lib/auto/Data/Dumper/Dumper.xs.dll +0 -0
- package/bin/exiftool_files/lib/auto/Digest/MD5/MD5.xs.dll +0 -0
- package/bin/exiftool_files/lib/auto/Digest/SHA/SHA.xs.dll +0 -0
- package/bin/exiftool_files/lib/auto/Encode/Encode.xs.dll +0 -0
- package/bin/exiftool_files/lib/auto/Fcntl/Fcntl.xs.dll +0 -0
- package/bin/exiftool_files/lib/auto/File/Glob/Glob.xs.dll +0 -0
- package/bin/exiftool_files/lib/auto/IO/Compress/Brotli/Brotli.xs.dll +0 -0
- package/bin/exiftool_files/lib/auto/IO/IO.xs.dll +0 -0
- package/bin/exiftool_files/lib/auto/List/Util/Util.xs.dll +0 -0
- package/bin/exiftool_files/lib/auto/MIME/Base64/Base64.xs.dll +0 -0
- package/bin/exiftool_files/lib/auto/Math/BigInt/FastCalc/FastCalc.xs.dll +0 -0
- package/bin/exiftool_files/lib/auto/Math/BigInt/GMP/GMP.xs.dll +0 -0
- package/bin/exiftool_files/lib/auto/POSIX/POSIX.xs.dll +0 -0
- package/bin/exiftool_files/lib/auto/PerlIO/scalar/scalar.xs.dll +0 -0
- package/bin/exiftool_files/lib/auto/Socket/Socket.xs.dll +0 -0
- package/bin/exiftool_files/lib/auto/Storable/Storable.xs.dll +0 -0
- package/bin/exiftool_files/lib/auto/Time/HiRes/HiRes.xs.dll +0 -0
- package/bin/exiftool_files/lib/auto/Time/Piece/Piece.xs.dll +0 -0
- package/bin/exiftool_files/lib/auto/Unicode/LineBreak/LineBreak.xs.dll +0 -0
- package/bin/exiftool_files/lib/auto/Win32/API/API.xs.dll +0 -0
- package/bin/exiftool_files/lib/auto/Win32/FindFile/FindFile.xs.dll +0 -0
- package/bin/exiftool_files/lib/auto/Win32/Win32.xs.dll +0 -0
- package/bin/exiftool_files/lib/auto/Win32API/File/File.xs.dll +0 -0
- package/bin/exiftool_files/lib/auto/mro/mro.xs.dll +0 -0
- package/bin/exiftool_files/lib/auto/re/re.xs.dll +0 -0
- package/bin/exiftool_files/lib/feature.pm +49 -17
- package/bin/exiftool_files/lib/mro.pm +4 -20
- package/bin/exiftool_files/lib/overload.pm +15 -15
- package/bin/exiftool_files/lib/parent.pm +10 -2
- package/bin/exiftool_files/lib/re.pm +91 -33
- package/bin/exiftool_files/lib/warnings.pm +17 -6
- package/bin/exiftool_files/libgcc_s_seh-1.dll +0 -0
- package/bin/exiftool_files/liblzma-5__.dll +0 -0
- package/bin/exiftool_files/libstdc++-6.dll +0 -0
- package/bin/exiftool_files/libwinpthread-1.dll +0 -0
- package/bin/exiftool_files/perl.exe +0 -0
- package/bin/exiftool_files/perl532.dll +0 -0
- package/package.json +6 -4
- package/bin/exiftool_files/lib/Image/ExifTool/GeoLang/cs.pm +0 -978
- package/bin/exiftool_files/lib/Image/ExifTool/GeoLang/de.pm +0 -1975
- package/bin/exiftool_files/lib/Image/ExifTool/GeoLang/en_ca.pm +0 -44
- package/bin/exiftool_files/lib/Image/ExifTool/GeoLang/en_gb.pm +0 -124
- package/bin/exiftool_files/lib/Image/ExifTool/GeoLang/es.pm +0 -2921
- package/bin/exiftool_files/lib/Image/ExifTool/GeoLang/fi.pm +0 -1116
- package/bin/exiftool_files/lib/Image/ExifTool/GeoLang/fr.pm +0 -3171
- package/bin/exiftool_files/lib/Image/ExifTool/GeoLang/it.pm +0 -2750
- package/bin/exiftool_files/lib/Image/ExifTool/GeoLang/ja.pm +0 -10256
- package/bin/exiftool_files/lib/Image/ExifTool/GeoLang/ko.pm +0 -4499
- package/bin/exiftool_files/lib/Image/ExifTool/GeoLang/nl.pm +0 -1270
- package/bin/exiftool_files/lib/Image/ExifTool/GeoLang/pl.pm +0 -3019
- package/bin/exiftool_files/lib/Image/ExifTool/GeoLang/ru.pm +0 -18220
- package/bin/exiftool_files/lib/Image/ExifTool/GeoLang/sk.pm +0 -441
- package/bin/exiftool_files/lib/Image/ExifTool/GeoLang/sv.pm +0 -714
- package/bin/exiftool_files/lib/Image/ExifTool/GeoLang/tr.pm +0 -452
- package/bin/exiftool_files/lib/Image/ExifTool/GeoLang/zh_cn.pm +0 -2225
- package/bin/exiftool_files/lib/Image/ExifTool/GeoLang/zh_tw.pm +0 -72
- package/bin/exiftool_files/libgcc_s_dw2-1.dll +0 -0
- package/bin/exiftool_files/perl530.dll +0 -0
|
@@ -10,12 +10,12 @@ use warnings ;
|
|
|
10
10
|
use bytes ;
|
|
11
11
|
our ($VERSION, $XS_VERSION, @ISA, @EXPORT, %EXPORT_TAGS, @EXPORT_OK, $AUTOLOAD, %DEFLATE_CONSTANTS, @DEFLATE_CONSTANTS);
|
|
12
12
|
|
|
13
|
-
$VERSION = '2.
|
|
14
|
-
$XS_VERSION = $VERSION;
|
|
13
|
+
$VERSION = '2.100';
|
|
14
|
+
$XS_VERSION = $VERSION;
|
|
15
15
|
$VERSION = eval $VERSION;
|
|
16
16
|
|
|
17
17
|
@ISA = qw(Exporter);
|
|
18
|
-
%EXPORT_TAGS = ( flush => [qw{
|
|
18
|
+
%EXPORT_TAGS = ( flush => [qw{
|
|
19
19
|
Z_NO_FLUSH
|
|
20
20
|
Z_PARTIAL_FLUSH
|
|
21
21
|
Z_SYNC_FLUSH
|
|
@@ -23,30 +23,30 @@ $VERSION = eval $VERSION;
|
|
|
23
23
|
Z_FINISH
|
|
24
24
|
Z_BLOCK
|
|
25
25
|
}],
|
|
26
|
-
level => [qw{
|
|
26
|
+
level => [qw{
|
|
27
27
|
Z_NO_COMPRESSION
|
|
28
28
|
Z_BEST_SPEED
|
|
29
29
|
Z_BEST_COMPRESSION
|
|
30
30
|
Z_DEFAULT_COMPRESSION
|
|
31
31
|
}],
|
|
32
|
-
strategy => [qw{
|
|
32
|
+
strategy => [qw{
|
|
33
33
|
Z_FILTERED
|
|
34
34
|
Z_HUFFMAN_ONLY
|
|
35
35
|
Z_RLE
|
|
36
36
|
Z_FIXED
|
|
37
37
|
Z_DEFAULT_STRATEGY
|
|
38
38
|
}],
|
|
39
|
-
status => [qw{
|
|
39
|
+
status => [qw{
|
|
40
40
|
Z_OK
|
|
41
41
|
Z_STREAM_END
|
|
42
42
|
Z_NEED_DICT
|
|
43
43
|
Z_ERRNO
|
|
44
44
|
Z_STREAM_ERROR
|
|
45
|
-
Z_DATA_ERROR
|
|
46
|
-
Z_MEM_ERROR
|
|
47
|
-
Z_BUF_ERROR
|
|
48
|
-
Z_VERSION_ERROR
|
|
49
|
-
}],
|
|
45
|
+
Z_DATA_ERROR
|
|
46
|
+
Z_MEM_ERROR
|
|
47
|
+
Z_BUF_ERROR
|
|
48
|
+
Z_VERSION_ERROR
|
|
49
|
+
}],
|
|
50
50
|
);
|
|
51
51
|
|
|
52
52
|
%DEFLATE_CONSTANTS = %EXPORT_TAGS;
|
|
@@ -54,12 +54,12 @@ $VERSION = eval $VERSION;
|
|
|
54
54
|
# Items to export into callers namespace by default. Note: do not export
|
|
55
55
|
# names by default without a very good reason. Use EXPORT_OK instead.
|
|
56
56
|
# Do not simply export all your public functions/methods/constants.
|
|
57
|
-
@DEFLATE_CONSTANTS =
|
|
57
|
+
@DEFLATE_CONSTANTS =
|
|
58
58
|
@EXPORT = qw(
|
|
59
59
|
ZLIB_VERSION
|
|
60
60
|
ZLIB_VERNUM
|
|
61
61
|
|
|
62
|
-
|
|
62
|
+
|
|
63
63
|
OS_CODE
|
|
64
64
|
|
|
65
65
|
MAX_MEM_LEVEL
|
|
@@ -125,13 +125,13 @@ eval {
|
|
|
125
125
|
require XSLoader;
|
|
126
126
|
XSLoader::load('Compress::Raw::Zlib', $XS_VERSION);
|
|
127
127
|
1;
|
|
128
|
-
}
|
|
128
|
+
}
|
|
129
129
|
or do {
|
|
130
130
|
require DynaLoader;
|
|
131
131
|
local @ISA = qw(DynaLoader);
|
|
132
|
-
bootstrap Compress::Raw::Zlib $XS_VERSION ;
|
|
132
|
+
bootstrap Compress::Raw::Zlib $XS_VERSION ;
|
|
133
133
|
};
|
|
134
|
-
|
|
134
|
+
|
|
135
135
|
|
|
136
136
|
use constant Parse_any => 0x01;
|
|
137
137
|
use constant Parse_unsigned => 0x02;
|
|
@@ -153,7 +153,7 @@ use constant OFF_STICKY => 5 ;
|
|
|
153
153
|
|
|
154
154
|
sub ParseParameters
|
|
155
155
|
{
|
|
156
|
-
my $level = shift || 0 ;
|
|
156
|
+
my $level = shift || 0 ;
|
|
157
157
|
|
|
158
158
|
my $sub = (caller($level + 1))[3] ;
|
|
159
159
|
#local $Carp::CarpLevel = 1 ;
|
|
@@ -186,13 +186,13 @@ sub Compress::Raw::Zlib::Parameters::setError
|
|
|
186
186
|
$self->{Error} = $error ;
|
|
187
187
|
return $retval;
|
|
188
188
|
}
|
|
189
|
-
|
|
189
|
+
|
|
190
190
|
#sub getError
|
|
191
191
|
#{
|
|
192
192
|
# my $self = shift ;
|
|
193
193
|
# return $self->{Error} ;
|
|
194
194
|
#}
|
|
195
|
-
|
|
195
|
+
|
|
196
196
|
sub Compress::Raw::Zlib::Parameters::parse
|
|
197
197
|
{
|
|
198
198
|
my $self = shift ;
|
|
@@ -211,10 +211,10 @@ sub Compress::Raw::Zlib::Parameters::parse
|
|
|
211
211
|
@entered = () ;
|
|
212
212
|
}
|
|
213
213
|
elsif (@_ == 1) {
|
|
214
|
-
my $href = $_[0] ;
|
|
214
|
+
my $href = $_[0] ;
|
|
215
215
|
return $self->setError("Expected even number of parameters, got 1")
|
|
216
216
|
if ! defined $href or ! ref $href or ref $href ne "HASH" ;
|
|
217
|
-
|
|
217
|
+
|
|
218
218
|
foreach my $key (keys %$href) {
|
|
219
219
|
push @entered, $key ;
|
|
220
220
|
push @entered, \$href->{$key} ;
|
|
@@ -224,7 +224,7 @@ sub Compress::Raw::Zlib::Parameters::parse
|
|
|
224
224
|
my $count = @_;
|
|
225
225
|
return $self->setError("Expected even number of parameters, got $count")
|
|
226
226
|
if $count % 2 != 0 ;
|
|
227
|
-
|
|
227
|
+
|
|
228
228
|
for my $i (0.. $count / 2 - 1) {
|
|
229
229
|
push @entered, $_[2* $i] ;
|
|
230
230
|
push @entered, \$_[2* $i+1] ;
|
|
@@ -239,7 +239,7 @@ sub Compress::Raw::Zlib::Parameters::parse
|
|
|
239
239
|
|
|
240
240
|
my ($first_only, $sticky, $type, $value) = @$v ;
|
|
241
241
|
my $x ;
|
|
242
|
-
$self->_checkType($key, \$value, $type, 0, \$x)
|
|
242
|
+
$self->_checkType($key, \$value, $type, 0, \$x)
|
|
243
243
|
or return undef ;
|
|
244
244
|
|
|
245
245
|
$key = lc $key;
|
|
@@ -260,7 +260,7 @@ sub Compress::Raw::Zlib::Parameters::parse
|
|
|
260
260
|
|
|
261
261
|
$key =~ s/^-// ;
|
|
262
262
|
my $canonkey = lc $key;
|
|
263
|
-
|
|
263
|
+
|
|
264
264
|
if ($got->{$canonkey} && ($firstTime ||
|
|
265
265
|
! $got->{$canonkey}[OFF_FIRST_ONLY] ))
|
|
266
266
|
{
|
|
@@ -275,7 +275,7 @@ sub Compress::Raw::Zlib::Parameters::parse
|
|
|
275
275
|
else
|
|
276
276
|
{ push (@Bad, $key) }
|
|
277
277
|
}
|
|
278
|
-
|
|
278
|
+
|
|
279
279
|
if (@Bad) {
|
|
280
280
|
my ($bad) = join(", ", @Bad) ;
|
|
281
281
|
return $self->setError("unknown key value(s) @Bad") ;
|
|
@@ -319,7 +319,7 @@ sub Compress::Raw::Zlib::Parameters::_checkType
|
|
|
319
319
|
return $self->setError("Parameter '$key' must be an unsigned int, got '$value'")
|
|
320
320
|
if $validate && $value !~ /^\d+$/;
|
|
321
321
|
|
|
322
|
-
$$output = defined $value ? $value : 0 ;
|
|
322
|
+
$$output = defined $value ? $value : 0 ;
|
|
323
323
|
return 1;
|
|
324
324
|
}
|
|
325
325
|
elsif ($type & Parse_signed)
|
|
@@ -329,19 +329,19 @@ sub Compress::Raw::Zlib::Parameters::_checkType
|
|
|
329
329
|
return $self->setError("Parameter '$key' must be a signed int, got '$value'")
|
|
330
330
|
if $validate && $value !~ /^-?\d+$/;
|
|
331
331
|
|
|
332
|
-
$$output = defined $value ? $value : 0 ;
|
|
332
|
+
$$output = defined $value ? $value : 0 ;
|
|
333
333
|
return 1 ;
|
|
334
334
|
}
|
|
335
335
|
elsif ($type & Parse_boolean)
|
|
336
336
|
{
|
|
337
337
|
return $self->setError("Parameter '$key' must be an int, got '$value'")
|
|
338
338
|
if $validate && defined $value && $value !~ /^\d*$/;
|
|
339
|
-
$$output = defined $value ? $value != 0 : 0 ;
|
|
339
|
+
$$output = defined $value ? $value != 0 : 0 ;
|
|
340
340
|
return 1;
|
|
341
341
|
}
|
|
342
342
|
# elsif ($type & Parse_string)
|
|
343
343
|
# {
|
|
344
|
-
# $$output = defined $value ? $value : "" ;
|
|
344
|
+
# $$output = defined $value ? $value : "" ;
|
|
345
345
|
# return 1;
|
|
346
346
|
# }
|
|
347
347
|
|
|
@@ -374,7 +374,7 @@ sub Compress::Raw::Zlib::Parameters::value
|
|
|
374
374
|
return $self->{Got}{lc $name}[OFF_FIXED] ;
|
|
375
375
|
}
|
|
376
376
|
|
|
377
|
-
our $OPTIONS_deflate =
|
|
377
|
+
our $OPTIONS_deflate =
|
|
378
378
|
{
|
|
379
379
|
'AppendOutput' => [1, 1, Parse_boolean, 0],
|
|
380
380
|
'CRC32' => [1, 1, Parse_boolean, 0],
|
|
@@ -394,7 +394,7 @@ sub Compress::Raw::Zlib::Deflate::new
|
|
|
394
394
|
my $pkg = shift ;
|
|
395
395
|
my ($got) = ParseParameters(0, $OPTIONS_deflate, @_);
|
|
396
396
|
|
|
397
|
-
croak "Compress::Raw::Zlib::Deflate::new: Bufsize must be >= 1, you specified " .
|
|
397
|
+
croak "Compress::Raw::Zlib::Deflate::new: Bufsize must be >= 1, you specified " .
|
|
398
398
|
$got->value('Bufsize')
|
|
399
399
|
unless $got->value('Bufsize') >= 1;
|
|
400
400
|
|
|
@@ -408,11 +408,11 @@ sub Compress::Raw::Zlib::Deflate::new
|
|
|
408
408
|
if ($windowBits & MAX_WBITS()) == 0 ;
|
|
409
409
|
|
|
410
410
|
_deflateInit($flags,
|
|
411
|
-
$got->value('Level'),
|
|
412
|
-
$got->value('Method'),
|
|
413
|
-
$windowBits,
|
|
414
|
-
$got->value('MemLevel'),
|
|
415
|
-
$got->value('Strategy'),
|
|
411
|
+
$got->value('Level'),
|
|
412
|
+
$got->value('Method'),
|
|
413
|
+
$windowBits,
|
|
414
|
+
$got->value('MemLevel'),
|
|
415
|
+
$got->value('Strategy'),
|
|
416
416
|
$got->value('Bufsize'),
|
|
417
417
|
$got->value('Dictionary')) ;
|
|
418
418
|
|
|
@@ -431,7 +431,7 @@ sub Compress::Raw::Zlib::deflateStream::STORABLE_thaw
|
|
|
431
431
|
}
|
|
432
432
|
|
|
433
433
|
|
|
434
|
-
our $OPTIONS_inflate =
|
|
434
|
+
our $OPTIONS_inflate =
|
|
435
435
|
{
|
|
436
436
|
'AppendOutput' => [1, 1, Parse_boolean, 0],
|
|
437
437
|
'LimitOutput' => [1, 1, Parse_boolean, 0],
|
|
@@ -439,7 +439,7 @@ our $OPTIONS_inflate =
|
|
|
439
439
|
'ADLER32' => [1, 1, Parse_boolean, 0],
|
|
440
440
|
'ConsumeInput' => [1, 1, Parse_boolean, 1],
|
|
441
441
|
'Bufsize' => [1, 1, Parse_unsigned, 4096],
|
|
442
|
-
|
|
442
|
+
|
|
443
443
|
'WindowBits' => [1, 1, Parse_signed, MAX_WBITS()],
|
|
444
444
|
'Dictionary' => [1, 1, Parse_any, ""],
|
|
445
445
|
} ;
|
|
@@ -449,7 +449,7 @@ sub Compress::Raw::Zlib::Inflate::new
|
|
|
449
449
|
my $pkg = shift ;
|
|
450
450
|
my ($got) = ParseParameters(0, $OPTIONS_inflate, @_);
|
|
451
451
|
|
|
452
|
-
croak "Compress::Raw::Zlib::Inflate::new: Bufsize must be >= 1, you specified " .
|
|
452
|
+
croak "Compress::Raw::Zlib::Inflate::new: Bufsize must be >= 1, you specified " .
|
|
453
453
|
$got->value('Bufsize')
|
|
454
454
|
unless $got->value('Bufsize') >= 1;
|
|
455
455
|
|
|
@@ -465,7 +465,7 @@ sub Compress::Raw::Zlib::Inflate::new
|
|
|
465
465
|
$windowBits += MAX_WBITS()
|
|
466
466
|
if ($windowBits & MAX_WBITS()) == 0 ;
|
|
467
467
|
|
|
468
|
-
_inflateInit($flags, $windowBits, $got->value('Bufsize'),
|
|
468
|
+
_inflateInit($flags, $windowBits, $got->value('Bufsize'),
|
|
469
469
|
$got->value('Dictionary')) ;
|
|
470
470
|
}
|
|
471
471
|
|
|
@@ -489,13 +489,13 @@ sub Compress::Raw::Zlib::InflateScan::new
|
|
|
489
489
|
'CRC32' => [1, 1, Parse_boolean, 0],
|
|
490
490
|
'ADLER32' => [1, 1, Parse_boolean, 0],
|
|
491
491
|
'Bufsize' => [1, 1, Parse_unsigned, 4096],
|
|
492
|
-
|
|
492
|
+
|
|
493
493
|
'WindowBits' => [1, 1, Parse_signed, -MAX_WBITS()],
|
|
494
494
|
'Dictionary' => [1, 1, Parse_any, ""],
|
|
495
495
|
}, @_) ;
|
|
496
496
|
|
|
497
497
|
|
|
498
|
-
croak "Compress::Raw::Zlib::InflateScan::new: Bufsize must be >= 1, you specified " .
|
|
498
|
+
croak "Compress::Raw::Zlib::InflateScan::new: Bufsize must be >= 1, you specified " .
|
|
499
499
|
$got->value('Bufsize')
|
|
500
500
|
unless $got->value('Bufsize') >= 1;
|
|
501
501
|
|
|
@@ -505,7 +505,7 @@ sub Compress::Raw::Zlib::InflateScan::new
|
|
|
505
505
|
$flags |= FLAG_ADLER if $got->value('ADLER32') ;
|
|
506
506
|
#$flags |= FLAG_CONSUME_INPUT if $got->value('ConsumeInput') ;
|
|
507
507
|
|
|
508
|
-
_inflateScanInit($flags, $got->value('WindowBits'), $got->value('Bufsize'),
|
|
508
|
+
_inflateScanInit($flags, $got->value('WindowBits'), $got->value('Bufsize'),
|
|
509
509
|
'') ;
|
|
510
510
|
}
|
|
511
511
|
|
|
@@ -518,7 +518,7 @@ sub Compress::Raw::Zlib::inflateScanStream::createDeflateStream
|
|
|
518
518
|
'CRC32' => [1, 1, Parse_boolean, 0],
|
|
519
519
|
'ADLER32' => [1, 1, Parse_boolean, 0],
|
|
520
520
|
'Bufsize' => [1, 1, Parse_unsigned, 4096],
|
|
521
|
-
|
|
521
|
+
|
|
522
522
|
'Level' => [1, 1, Parse_signed, Z_DEFAULT_COMPRESSION()],
|
|
523
523
|
'Method' => [1, 1, Parse_unsigned, Z_DEFLATED()],
|
|
524
524
|
'WindowBits' => [1, 1, Parse_signed, - MAX_WBITS()],
|
|
@@ -526,7 +526,7 @@ sub Compress::Raw::Zlib::inflateScanStream::createDeflateStream
|
|
|
526
526
|
'Strategy' => [1, 1, Parse_unsigned, Z_DEFAULT_STRATEGY()],
|
|
527
527
|
}, @_) ;
|
|
528
528
|
|
|
529
|
-
croak "Compress::Raw::Zlib::InflateScan::createDeflateStream: Bufsize must be >= 1, you specified " .
|
|
529
|
+
croak "Compress::Raw::Zlib::InflateScan::createDeflateStream: Bufsize must be >= 1, you specified " .
|
|
530
530
|
$got->value('Bufsize')
|
|
531
531
|
unless $got->value('Bufsize') >= 1;
|
|
532
532
|
|
|
@@ -536,11 +536,11 @@ sub Compress::Raw::Zlib::inflateScanStream::createDeflateStream
|
|
|
536
536
|
$flags |= FLAG_ADLER if $got->value('ADLER32') ;
|
|
537
537
|
|
|
538
538
|
$pkg->_createDeflateStream($flags,
|
|
539
|
-
$got->value('Level'),
|
|
540
|
-
$got->value('Method'),
|
|
541
|
-
$got->value('WindowBits'),
|
|
542
|
-
$got->value('MemLevel'),
|
|
543
|
-
$got->value('Strategy'),
|
|
539
|
+
$got->value('Level'),
|
|
540
|
+
$got->value('Method'),
|
|
541
|
+
$got->value('WindowBits'),
|
|
542
|
+
$got->value('MemLevel'),
|
|
543
|
+
$got->value('Strategy'),
|
|
544
544
|
$got->value('Bufsize'),
|
|
545
545
|
) ;
|
|
546
546
|
|
|
@@ -556,10 +556,10 @@ sub Compress::Raw::Zlib::inflateScanStream::inflate
|
|
|
556
556
|
|
|
557
557
|
if ($status == Z_OK() && $_[2]) {
|
|
558
558
|
my $byte = ' ';
|
|
559
|
-
|
|
559
|
+
|
|
560
560
|
$status = $self->scan(\$byte, $_[1]) ;
|
|
561
561
|
}
|
|
562
|
-
|
|
562
|
+
|
|
563
563
|
return $status ;
|
|
564
564
|
}
|
|
565
565
|
|
|
@@ -570,14 +570,14 @@ sub Compress::Raw::Zlib::deflateStream::deflateParams
|
|
|
570
570
|
'Level' => [1, 1, Parse_signed, undef],
|
|
571
571
|
'Strategy' => [1, 1, Parse_unsigned, undef],
|
|
572
572
|
'Bufsize' => [1, 1, Parse_unsigned, undef],
|
|
573
|
-
},
|
|
573
|
+
},
|
|
574
574
|
@_) ;
|
|
575
575
|
|
|
576
576
|
croak "Compress::Raw::Zlib::deflateParams needs Level and/or Strategy"
|
|
577
577
|
unless $got->parsed('Level') + $got->parsed('Strategy') +
|
|
578
578
|
$got->parsed('Bufsize');
|
|
579
579
|
|
|
580
|
-
croak "Compress::Raw::Zlib::Inflate::deflateParams: Bufsize must be >= 1, you specified " .
|
|
580
|
+
croak "Compress::Raw::Zlib::Inflate::deflateParams: Bufsize must be >= 1, you specified " .
|
|
581
581
|
$got->value('Bufsize')
|
|
582
582
|
if $got->parsed('Bufsize') && $got->value('Bufsize') <= 1;
|
|
583
583
|
|
|
@@ -586,7 +586,7 @@ sub Compress::Raw::Zlib::deflateStream::deflateParams
|
|
|
586
586
|
$flags |= 2 if $got->parsed('Strategy') ;
|
|
587
587
|
$flags |= 4 if $got->parsed('Bufsize') ;
|
|
588
588
|
|
|
589
|
-
$self->_deflateParams($flags, $got->value('Level'),
|
|
589
|
+
$self->_deflateParams($flags, $got->value('Level'),
|
|
590
590
|
$got->value('Strategy'), $got->value('Bufsize'));
|
|
591
591
|
|
|
592
592
|
}
|
|
@@ -931,18 +931,18 @@ input, deflates it and writes it to standard output.
|
|
|
931
931
|
while (<>)
|
|
932
932
|
{
|
|
933
933
|
$status = $x->deflate($_, $output) ;
|
|
934
|
-
|
|
934
|
+
|
|
935
935
|
$status == Z_OK
|
|
936
936
|
or die "deflation failed\n" ;
|
|
937
|
-
|
|
937
|
+
|
|
938
938
|
print $output ;
|
|
939
939
|
}
|
|
940
|
-
|
|
940
|
+
|
|
941
941
|
$status = $x->flush($output) ;
|
|
942
|
-
|
|
942
|
+
|
|
943
943
|
$status == Z_OK
|
|
944
944
|
or die "deflation failed\n" ;
|
|
945
|
-
|
|
945
|
+
|
|
946
946
|
print $output ;
|
|
947
947
|
|
|
948
948
|
=head1 Compress::Raw::Zlib::Inflate
|
|
@@ -1210,26 +1210,26 @@ Here is an example of using C<inflate>.
|
|
|
1210
1210
|
|
|
1211
1211
|
use strict ;
|
|
1212
1212
|
use warnings ;
|
|
1213
|
-
|
|
1213
|
+
|
|
1214
1214
|
use Compress::Raw::Zlib;
|
|
1215
|
-
|
|
1215
|
+
|
|
1216
1216
|
my $x = new Compress::Raw::Zlib::Inflate()
|
|
1217
1217
|
or die "Cannot create a inflation stream\n" ;
|
|
1218
|
-
|
|
1218
|
+
|
|
1219
1219
|
my $input = '' ;
|
|
1220
1220
|
binmode STDIN;
|
|
1221
1221
|
binmode STDOUT;
|
|
1222
|
-
|
|
1222
|
+
|
|
1223
1223
|
my ($output, $status) ;
|
|
1224
1224
|
while (read(STDIN, $input, 4096))
|
|
1225
1225
|
{
|
|
1226
1226
|
$status = $x->inflate($input, $output) ;
|
|
1227
|
-
|
|
1227
|
+
|
|
1228
1228
|
print $output ;
|
|
1229
|
-
|
|
1229
|
+
|
|
1230
1230
|
last if $status != Z_OK ;
|
|
1231
1231
|
}
|
|
1232
|
-
|
|
1232
|
+
|
|
1233
1233
|
die "inflation failed\n"
|
|
1234
1234
|
unless $status == Z_STREAM_END ;
|
|
1235
1235
|
|
|
@@ -1243,16 +1243,16 @@ simpler.
|
|
|
1243
1243
|
|
|
1244
1244
|
use strict ;
|
|
1245
1245
|
use warnings ;
|
|
1246
|
-
|
|
1246
|
+
|
|
1247
1247
|
use Compress::Raw::Zlib;
|
|
1248
|
-
|
|
1248
|
+
|
|
1249
1249
|
my $x = new Compress::Raw::Zlib::Inflate(LimitOutput => 1)
|
|
1250
1250
|
or die "Cannot create a inflation stream\n" ;
|
|
1251
|
-
|
|
1251
|
+
|
|
1252
1252
|
my $input = '' ;
|
|
1253
1253
|
binmode STDIN;
|
|
1254
1254
|
binmode STDOUT;
|
|
1255
|
-
|
|
1255
|
+
|
|
1256
1256
|
my ($output, $status) ;
|
|
1257
1257
|
|
|
1258
1258
|
OUTER:
|
|
@@ -1269,7 +1269,7 @@ simpler.
|
|
|
1269
1269
|
}
|
|
1270
1270
|
while ($status == Z_OK && length $input);
|
|
1271
1271
|
}
|
|
1272
|
-
|
|
1272
|
+
|
|
1273
1273
|
die "inflation failed\n"
|
|
1274
1274
|
unless $status == Z_STREAM_END ;
|
|
1275
1275
|
|
|
@@ -1324,24 +1324,24 @@ source and uncompressing as you go the code will look something like this
|
|
|
1324
1324
|
|
|
1325
1325
|
use strict ;
|
|
1326
1326
|
use warnings ;
|
|
1327
|
-
|
|
1327
|
+
|
|
1328
1328
|
use Compress::Raw::Zlib;
|
|
1329
|
-
|
|
1329
|
+
|
|
1330
1330
|
my $x = new Compress::Raw::Zlib::Inflate()
|
|
1331
1331
|
or die "Cannot create a inflation stream\n" ;
|
|
1332
|
-
|
|
1332
|
+
|
|
1333
1333
|
my $input = '' ;
|
|
1334
|
-
|
|
1334
|
+
|
|
1335
1335
|
my ($output, $status) ;
|
|
1336
1336
|
while (read(STDIN, $input, 4096))
|
|
1337
1337
|
{
|
|
1338
1338
|
$status = $x->inflate($input, $output) ;
|
|
1339
|
-
|
|
1339
|
+
|
|
1340
1340
|
print $output ;
|
|
1341
|
-
|
|
1341
|
+
|
|
1342
1342
|
last if $status != Z_OK ;
|
|
1343
1343
|
}
|
|
1344
|
-
|
|
1344
|
+
|
|
1345
1345
|
die "inflation failed\n"
|
|
1346
1346
|
unless $status == Z_STREAM_END ;
|
|
1347
1347
|
|
|
@@ -1391,16 +1391,16 @@ Below is typical code that shows how to use C<LimitOutput>.
|
|
|
1391
1391
|
|
|
1392
1392
|
use strict ;
|
|
1393
1393
|
use warnings ;
|
|
1394
|
-
|
|
1394
|
+
|
|
1395
1395
|
use Compress::Raw::Zlib;
|
|
1396
|
-
|
|
1396
|
+
|
|
1397
1397
|
my $x = new Compress::Raw::Zlib::Inflate(LimitOutput => 1)
|
|
1398
1398
|
or die "Cannot create a inflation stream\n" ;
|
|
1399
|
-
|
|
1399
|
+
|
|
1400
1400
|
my $input = '' ;
|
|
1401
1401
|
binmode STDIN;
|
|
1402
1402
|
binmode STDOUT;
|
|
1403
|
-
|
|
1403
|
+
|
|
1404
1404
|
my ($output, $status) ;
|
|
1405
1405
|
|
|
1406
1406
|
OUTER:
|
|
@@ -1417,7 +1417,7 @@ Below is typical code that shows how to use C<LimitOutput>.
|
|
|
1417
1417
|
}
|
|
1418
1418
|
while ($status == Z_OK && length $input);
|
|
1419
1419
|
}
|
|
1420
|
-
|
|
1420
|
+
|
|
1421
1421
|
die "inflation failed\n"
|
|
1422
1422
|
unless $status == Z_STREAM_END ;
|
|
1423
1423
|
|
|
@@ -1557,6 +1557,12 @@ C<IO::Compress::RawDeflate>.
|
|
|
1557
1557
|
All the I<zlib> constants are automatically imported when you make use
|
|
1558
1558
|
of I<Compress::Raw::Zlib>.
|
|
1559
1559
|
|
|
1560
|
+
=head1 SUPPORT
|
|
1561
|
+
|
|
1562
|
+
General feedback/questions/bug reports should be sent to
|
|
1563
|
+
L<https://github.com/pmqs/Compress-Raw-Zlib/issues> (preferred) or
|
|
1564
|
+
L<https://rt.cpan.org/Public/Dist/Display.html?Name=Compress-Raw-Zlib>.
|
|
1565
|
+
|
|
1560
1566
|
=head1 SEE ALSO
|
|
1561
1567
|
|
|
1562
1568
|
L<Compress::Zlib>, L<IO::Compress::Gzip>, L<IO::Uncompress::Gunzip>, L<IO::Compress::Deflate>, L<IO::Uncompress::Inflate>, L<IO::Compress::RawDeflate>, L<IO::Uncompress::RawInflate>, L<IO::Compress::Bzip2>, L<IO::Uncompress::Bunzip2>, L<IO::Compress::Lzma>, L<IO::Uncompress::UnLzma>, L<IO::Compress::Xz>, L<IO::Uncompress::UnXz>, L<IO::Compress::Lzip>, L<IO::Uncompress::UnLzip>, L<IO::Compress::Lzop>, L<IO::Uncompress::UnLzop>, L<IO::Compress::Lzf>, L<IO::Uncompress::UnLzf>, L<IO::Compress::Zstd>, L<IO::Uncompress::UnZstd>, L<IO::Uncompress::AnyInflate>, L<IO::Uncompress::AnyUncompress>
|
|
@@ -1590,8 +1596,7 @@ See the Changes file.
|
|
|
1590
1596
|
|
|
1591
1597
|
=head1 COPYRIGHT AND LICENSE
|
|
1592
1598
|
|
|
1593
|
-
Copyright (c) 2005-
|
|
1599
|
+
Copyright (c) 2005-2021 Paul Marquess. All rights reserved.
|
|
1594
1600
|
|
|
1595
1601
|
This program is free software; you can redistribute it and/or
|
|
1596
1602
|
modify it under the same terms as Perl itself.
|
|
1597
|
-
|