X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;f=lib%2FFile%2FKDBX%2FDumper%2FV3.pm;h=cf1f1ed85dae3d5ee7f17bc4bffc4ef444a03e7f;hb=fe0093f5f317cd136a2328abb7b0c31a69d4fe33;hp=635931fa5c58baea93a18fc0b4cb90261b417a59;hpb=50f1a929d9224b9072b5fae39162a5d943323c5d;p=chaz%2Fp5-File-KDBX diff --git a/lib/File/KDBX/Dumper/V3.pm b/lib/File/KDBX/Dumper/V3.pm index 635931f..cf1f1ed 100644 --- a/lib/File/KDBX/Dumper/V3.pm +++ b/lib/File/KDBX/Dumper/V3.pm @@ -10,11 +10,11 @@ use File::KDBX::Constants qw(:header :compression); use File::KDBX::Error; use File::KDBX::IO::Crypt; use File::KDBX::IO::HashBlock; -use File::KDBX::Util qw(:empty assert_64bit erase_scoped); +use File::KDBX::Util qw(:class :empty :load assert_64bit erase_scoped); use IO::Handle; use namespace::clean; -use parent 'File::KDBX::Dumper'; +extends 'File::KDBX::Dumper'; our $VERSION = '999.999'; # VERSION @@ -59,7 +59,7 @@ sub _write_header { my $type = shift; my $val = shift // ''; - $type = KDBX_HEADER($type); + $type = to_header_constant($type); if ($type == HEADER_END) { $val = "\r\n\r\n"; } @@ -152,7 +152,6 @@ sub _write_body { $fh->print($kdbx->headers->{+HEADER_STREAM_START_BYTES}) or throw 'Failed to write start bytes'; - $fh->flush; $kdbx->key($key); @@ -160,7 +159,7 @@ sub _write_body { my $compress = $kdbx->headers->{+HEADER_COMPRESSION_FLAGS}; if ($compress == COMPRESSION_GZIP) { - require IO::Compress::Gzip; + load_optional('IO::Compress::Gzip'); $fh = IO::Compress::Gzip->new($fh, -Level => IO::Compress::Gzip::Z_BEST_COMPRESSION(), -TextFlag => 1,