From 5f7f8ed2f53ef73a6e350f5a0f1301ede68d505f Mon Sep 17 00:00:00 2001 From: Simon Rettberg Date: Wed, 21 Jan 2015 17:06:23 +0100 Subject: Fix stupid bug in update query, check DB version before handling callbacks --- inc/taskmanagercallback.inc.php | 20 +++++++++++++------- 1 file changed, 13 insertions(+), 7 deletions(-) (limited to 'inc/taskmanagercallback.inc.php') diff --git a/inc/taskmanagercallback.inc.php b/inc/taskmanagercallback.inc.php index a42f4819..8550d845 100644 --- a/inc/taskmanagercallback.inc.php +++ b/inc/taskmanagercallback.inc.php @@ -25,15 +25,19 @@ class TaskmanagerCallback EventLog::warning("addCallback: Not a valid task id: $task"); return; } - if (is_null($args)) - $args = ''; - else - $args = serialize($args); - Database::exec("INSERT INTO callback (taskid, dateline, cbfunction, args) VALUES (:task, UNIX_TIMESTAMP(), :callback, :args)", array( + $data = array( 'task' => $task, 'callback' => $callback, - 'args' => $args - )); + ); + if (Property::getCurrentSchemaVersion() >= 9) { + if (is_null($args)) + $data['args'] = ''; + else + $data['args'] = serialize($args); + Database::exec("INSERT INTO callback (taskid, dateline, cbfunction, args) VALUES (:task, UNIX_TIMESTAMP(), :callback, :args)", $data); + } else { + Database::exec("INSERT INTO callback (taskid, dateline, cbfunction) VALUES (:task, UNIX_TIMESTAMP(), :callback)", $data); + } Property::setNeedsCallback(1); } @@ -44,6 +48,8 @@ class TaskmanagerCallback */ public static function getPendingCallbacks() { + if (Property::getCurrentSchemaVersion() < 9) + return array(); $retval = array(); $res = Database::simpleQuery("SELECT taskid, cbfunction, args FROM callback"); while ($row = $res->fetch(PDO::FETCH_ASSOC)) { -- cgit v1.2.3-55-g7522