From 0bae09796539d19ca18f6567dac468271404e7c3 Mon Sep 17 00:00:00 2001 From: Moritz Bunkus Date: Fri, 19 Apr 2013 14:14:02 +0200 Subject: [PATCH] RDBO: Exceptions in before_*/after_*-Hooks bubblen --- SL/DB/Object.pm | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/SL/DB/Object.pm b/SL/DB/Object.pm index 1c7c050ea..8b86e9711 100755 --- a/SL/DB/Object.pm +++ b/SL/DB/Object.pm @@ -134,12 +134,12 @@ sub save { my ($result, $exception); my $worker = sub { - SL::DB::Object::Hooks::run_hooks($self, 'before_save'); $exception = $EVAL_ERROR unless eval { + SL::DB::Object::Hooks::run_hooks($self, 'before_save'); $result = $self->SUPER::save(@args); + SL::DB::Object::Hooks::run_hooks($self, 'after_save', $result); 1; }; - SL::DB::Object::Hooks::run_hooks($self, 'after_save', $result); return $result; }; @@ -156,12 +156,12 @@ sub delete { my ($result, $exception); my $worker = sub { - SL::DB::Object::Hooks::run_hooks($self, 'before_delete'); $exception = $EVAL_ERROR unless eval { + SL::DB::Object::Hooks::run_hooks($self, 'before_delete'); $result = $self->SUPER::delete(@args); + SL::DB::Object::Hooks::run_hooks($self, 'after_delete', $result); 1; }; - SL::DB::Object::Hooks::run_hooks($self, 'after_delete', $result); return $result; }; -- 2.20.1