From: Peter Rabbitson Date: Thu, 4 Feb 2016 09:16:40 +0000 (+0100) Subject: Streamline couple code paths/texts, no func changes (goes with 7cb35852) X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=commitdiff_plain;h=118b2c36ae7a9174ecc4b22e1fa2c91f8e56dead;p=dbsrgits%2FDBIx-Class.git Streamline couple code paths/texts, no func changes (goes with 7cb35852) --- diff --git a/lib/DBIx/Class/Schema.pm b/lib/DBIx/Class/Schema.pm index 5f03739..4f595da 100644 --- a/lib/DBIx/Class/Schema.pm +++ b/lib/DBIx/Class/Schema.pm @@ -1089,13 +1089,13 @@ This guard was activated beginning" }; eval { - # if it throws - good, we'll go down to the do{} below + # if it throws - good, we'll assign to @args in the end # if it doesn't - do different things depending on RV truthiness if( $act->(@args) ) { $args[0] = ( "Invocation of the exception_action handler installed on $self did *not*" .' result in an exception. DBIx::Class is unable to function without a reliable' - .' exception mechanism, ensure that exception_action does not hide exceptions' + .' exception mechanism, ensure your exception_action does not hide exceptions' ." (original error: $args[0])" ); } @@ -1107,19 +1107,19 @@ This guard was activated beginning" ); } - $guard_disarmed = 1; + 1; } or - do { - # We call this to get the necessary warnings emitted and disregard the RV - # as it's definitely an exception if we got as far as this do{} block - is_exception($@); + # We call this to get the necessary warnings emitted and disregard the RV + # as it's definitely an exception if we got as far as this do{} block + is_exception( + $args[0] = $@ + ); - $guard_disarmed = 1; - $args[0] = $@; - }; + # Done guarding against https://github.com/PerlDancer/Dancer2/issues/1125 + $guard_disarmed = 1; } DBIx::Class::Exception->throw( $args[0], $self->stacktrace ); diff --git a/lib/DBIx/Class/Storage/TxnScopeGuard.pm b/lib/DBIx/Class/Storage/TxnScopeGuard.pm index 583639f..111621b 100644 --- a/lib/DBIx/Class/Storage/TxnScopeGuard.pm +++ b/lib/DBIx/Class/Storage/TxnScopeGuard.pm @@ -82,7 +82,7 @@ sub DESTROY { return unless defined $_[0]->{dbh}; - carp 'A DBIx::Class::Storage::TxnScopeGuard went out of scope without explicit commit or error. Rolling back.' + carp 'A DBIx::Class::Storage::TxnScopeGuard went out of scope without explicit commit or error. Rolling back' unless defined $current_exception; diff --git a/lib/DBIx/Class/_Util.pm b/lib/DBIx/Class/_Util.pm index c22a5c6..4a30060 100644 --- a/lib/DBIx/Class/_Util.pm +++ b/lib/DBIx/Class/_Util.pm @@ -145,9 +145,11 @@ sub scope_guard (&) { eval { $_[0]->[0]->(); 1; - } or do { - Carp::cluck "Execution of scope guard $_[0] resulted in the non-trappable exception:\n\n$@"; - }; + } + or + Carp::cluck( + "Execution of scope guard $_[0] resulted in the non-trappable exception:\n\n$@" + ); } }