Merge branch 'b-3.6.1' of ../kivitendo-erp_20220811
[kivitendo-erp.git] / SL / DB / Object / Hooks.pm
index e479514..6a54869 100644 (file)
@@ -44,11 +44,11 @@ sub run_hooks {
 
   foreach my $sub (@{ ( $hooks{$when} || { })->{ ref($object) } || [ ] }) {
     my $result = ref($sub) eq 'CODE' ? $sub->($object, @args) : $object->call_sub($sub, @args);
-    die SL::X::DBHookError->new(
-      hook   => (ref($sub) eq 'CODE' ? '<anonymous sub>' : $sub),
-      when   => $when,
-      object => $object,
-    ) if !$result;
+    SL::X::DBHookError->throw(when        => $when,
+                              hook        => (ref($sub) eq 'CODE' ? '<anonymous sub>' : $sub),
+                              object      => $object,
+                              object_type => ref($object))
+      if !$result;
   }
 }
 
@@ -122,8 +122,8 @@ C<after_xyz> function names above.
 An exception of C<SL::X::DBHookError> is thrown if any of the hooks
 returns a falsish value.
 
-This function is supposed to be called by L<Rose::DB::Object/load>,
-L<Rose::DB::Object/save> or L<Rose::DB::Object/delete>.
+This function is supposed to be called by L<SL::DB::Object/"load">,
+L<SL::DB::Object/"save"> or L<SL::DB::Object/"delete">.
 
 =back