X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=lib%2FDBIx%2FClass%2FStorage%2FTxnScopeGuard.pm;fp=lib%2FDBIx%2FClass%2FStorage%2FTxnScopeGuard.pm;h=edf72057f280688edf67765def5f9e0f9393ab67;hb=d63c9e6418251a745cc6b6e1ef5ddf4b12ceb190;hp=7cb37377775f842e50bc0d1cb7a3ee866b237df3;hpb=90a8030442ff2b9b6414ec9d8d7119b28d36426c;p=dbsrgits%2FDBIx-Class.git diff --git a/lib/DBIx/Class/Storage/TxnScopeGuard.pm b/lib/DBIx/Class/Storage/TxnScopeGuard.pm index 7cb3737..edf7205 100644 --- a/lib/DBIx/Class/Storage/TxnScopeGuard.pm +++ b/lib/DBIx/Class/Storage/TxnScopeGuard.pm @@ -3,9 +3,9 @@ package DBIx::Class::Storage::TxnScopeGuard; use strict; use warnings; use Try::Tiny; -use Scalar::Util qw/weaken blessed refaddr/; +use Scalar::Util qw(weaken blessed refaddr); use DBIx::Class; -use DBIx::Class::_Util 'is_exception'; +use DBIx::Class::_Util qw(is_exception detected_reinvoked_destructor); use DBIx::Class::Carp; use namespace::clean; @@ -50,6 +50,8 @@ sub commit { } sub DESTROY { + return if &detected_reinvoked_destructor; + my $self = shift; return if $self->{inactivated};