my $location = $blist->get_data_location_for({
allow_head => 0,
});
- my $old_value = $self->engine->_load_sector( $location );
+ my $old_value = $location && $self->engine->_load_sector( $location );
if ( $self->engine->trans_id == 0 ) {
my @transactions = $self->engine->read_transaction_slots;
$blist->mark_deleted( $args );
- my $data = $old_value->data;
- $old_value->free;
+ my $data;
+ if ( $old_value ) {
+ $data = $old_value->data;
+ $old_value->free;
+ }
return $data;
}