sub _clear {
my $self = shift;
- while ( defined( 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);