use strict;
use warnings FATAL => 'all';
-
-our $VERSION = $DBM::Deep::VERSION;
+no warnings 'recursion';
use base 'DBM::Deep';
sub _clear {
my $self = shift;
- while ( my $key = $self->first_key ) {
+ while ( defined(my $key = $self->first_key) ) {
+ do {
$self->_engine->delete_key( $self, $key, $key );
+ } while defined($key = $self->next_key($key));
}
return;
my ($db_temp) = @_;
my $key = $self->first_key();
- while ($key) {
+ while (defined $key) {
my $value = $self->get($key);
$self->_copy_value( \$db_temp->{$key}, $value );
$key = $self->next_key($key);