X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=lib%2FDBM%2FDeep%2FHash.pm;fp=lib%2FDBM%2FDeep%2FHash.pm;h=40f0bf6347066bdae88af062e04c60d554efa496;hb=e73f12ce9c4e8bdc89f1bc84d8f2a101bdb21518;hp=1671788918a98ca71506a62de79df7b233a57272;hpb=8385c429c0fb14033edd484e9daf138cd799c432;p=dbsrgits%2FDBM-Deep.git diff --git a/lib/DBM/Deep/Hash.pm b/lib/DBM/Deep/Hash.pm index 1671788..40f0bf6 100644 --- a/lib/DBM/Deep/Hash.pm +++ b/lib/DBM/Deep/Hash.pm @@ -102,10 +102,12 @@ sub first_key { (shift)->FIRSTKEY(@_) } sub next_key { (shift)->NEXTKEY(@_) } sub _clear { - my $self = shift; + my $self = shift->_get_self; - 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;