Bug 22908: Prevent ModSuggestion to send a notice if something wrong happened
authorJonathan Druart <jonathan.druart@bugs.koha-community.org>
Tue, 14 May 2019 17:23:25 +0000 (12:23 -0500)
committerMartin Renvoize <martin.renvoize@ptfs-europe.com>
Thu, 30 May 2019 20:15:22 +0000 (21:15 +0100)
There is a return value $status_update_table that is set to 0, then we
send the alert (whatever the value of this variable). We must return
earlier if something happened!

Test plan:
Not sure how to recreate it via the interface, so just run the tests?

Signed-off-by: Liz Rea <wizzyrea@gmail.com>

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
(cherry picked from commit 39c4d9d55e5a2e137adbbbd2b29b5b829f66b59e)
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

C4/Suggestions.pm

index 70b7b0d..42be6f3 100644 (file)
@@ -492,11 +492,10 @@ sub ModSuggestion {
     }
 
     my $rs = Koha::Database->new->schema->resultset('Suggestion')->find($suggestion->{suggestionid});
-    my $status_update_table = 1;
-    eval {
+    eval { # FIXME Must raise an exception instead
         $rs->update($suggestion);
     };
-    $status_update_table = 0 if( $@ );
+    return 0 if $@;
 
     if ( $suggestion->{STATUS} ) {
 
@@ -529,7 +528,7 @@ sub ModSuggestion {
             ) or warn "can't enqueue letter $letter";
         }
     }
-    return $status_update_table;
+    return 1; # No useful if the exception is raised earlier
 }
 
 =head2 ConnectSuggestionAndBiblio