From 92bda853b5c48a8cd4a4bdaa6272ad21c51cfe86 Mon Sep 17 00:00:00 2001 From: Cassio de Campos Date: Wed, 1 Nov 2017 18:13:51 +0000 Subject: avoid double transact --- src/fcontest.php | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'src/fcontest.php') diff --git a/src/fcontest.php b/src/fcontest.php index 50b9a08..9787e1c 100644 --- a/src/fcontest.php +++ b/src/fcontest.php @@ -327,7 +327,11 @@ function DBDeleteUser($contest, $site, $user) { $n = DBnlines($r); for ($i=0;$i<$n;$i++) { $a = DBRow($r,$i); - DBRunDelete($a["number"],$a["site"],$contest,$_SESSION["usertable"]["usernumber"],$_SESSION["usertable"]["usersitenumber"]); + if(DBRunDelete($a["number"],$a["site"],$contest,$_SESSION["usertable"]["usernumber"],$_SESSION["usertable"]["usersitenumber"],$c) === false) { + DBExec($c, "rollback work"); + LOGLevel("User $user (site=$site,contest=$contest) could not be removed (run delete error).", 1); + return false; + } } DBExec($c, "commit work"); LOGLevel("User $user (site=$site,contest=$contest) marked as inactive.", 1); -- cgit v1.2.3