]> Dogcows Code - chaz/p5-File-KDBX/blobdiff - lib/File/KDBX/Loader/XML.pm
Add iterator
[chaz/p5-File-KDBX] / lib / File / KDBX / Loader / XML.pm
index a607405de14464450dd035c039c37b85a3dd60c6..00676a1cf7772614520194ec83d2d508d8d099a8 100644 (file)
@@ -165,16 +165,15 @@ sub _read_xml_custom_data {
 sub _read_xml_custom_icons {
     my $self = shift;
 
-    return $self->_read_xml_element(
+    return $self->_read_xml_element([],
         Icon    => sub {
             my $self = shift;
-            my $icon = $self->_read_xml_element(
+            $self->_read_xml_element(
                 UUID                    => 'uuid',
                 Data                    => 'binary',
                 Name                    => 'text',      # KDBX4.1
                 LastModificationTime    => 'datetime',  # KDBX4.1
             );
-            $icon->{uuid} => $icon;
         },
     );
 }
@@ -368,10 +367,10 @@ sub _resolve_binary_refs {
     my $self = shift;
     my $kdbx = $self->kdbx;
 
-    my $entries = $kdbx->all_entries(history => 1);
     my $pool = $kdbx->binaries;
 
-    for my $entry (@$entries) {
+    my $entries = $kdbx->entries(history => 1);
+    while (my $entry = $entries->next) {
         while (my ($key, $binary) = each %{$entry->binaries}) {
             my $ref = $binary->{ref} // next;
             next if defined $binary->{value};
This page took 0.024795 seconds and 4 git commands to generate.