X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=lib%2FDBM%2FDeep%2FEngine%2FSector%2FReference.pm;h=de102c55245154e92ea35eeacff525b4b7baf022;hb=9c87a079060af9b367681cd1f96d0abd36745836;hp=0c5e215f14e44d852539bc073f805310454b368b;hpb=97d40a0ac43400f8416c3e930c5626c5cb472a55;p=dbsrgits%2FDBM-Deep.git diff --git a/lib/DBM/Deep/Engine/Sector/Reference.pm b/lib/DBM/Deep/Engine/Sector/Reference.pm index 0c5e215..de102c5 100644 --- a/lib/DBM/Deep/Engine/Sector/Reference.pm +++ b/lib/DBM/Deep/Engine/Sector/Reference.pm @@ -454,11 +454,11 @@ sub free { bless $self->engine->cache->{ $self->offset }, 'DBM::Deep::Null'; delete $self->engine->cache->{ $self->offset }; - my $blist_loc = $self->get_blist_loc; - $self->engine->_load_sector( $blist_loc )->free if $blist_loc; - - my $class_loc = $self->get_class_offset; - $self->engine->_load_sector( $class_loc )->free if $class_loc; + foreach my $meth ( qw( get_blist_loc get_class_offset ) ) { + my $l = $self->$meth; + my $s = $self->engine->_load_sector( $l ); + $s->free if $s; + } $self->SUPER::free(); }