diff options
author | Bharat Mediratta <bharat@menalto.com> | 2009-07-07 21:20:37 -0700 |
---|---|---|
committer | Bharat Mediratta <bharat@menalto.com> | 2009-07-07 21:20:37 -0700 |
commit | 74d4a4c0fd0d1aa2e93e62397b0b0a10d55b986d (patch) | |
tree | 70d5a48fc8bfcf0a7db0ceb94d284d6df38c92f0 /modules/gallery/helpers/task.php | |
parent | faabae5dae712ebff656abe8ebc493d8e031d4a3 (diff) | |
parent | 6ac5238b83d58824eb9327406a2ee50b7e603214 (diff) |
Merge branch 'master' of git@github.com:/gallery/gallery3
Diffstat (limited to 'modules/gallery/helpers/task.php')
-rw-r--r-- | modules/gallery/helpers/task.php | 19 |
1 files changed, 16 insertions, 3 deletions
diff --git a/modules/gallery/helpers/task.php b/modules/gallery/helpers/task.php index a8a004ab..6a9f63c2 100644 --- a/modules/gallery/helpers/task.php +++ b/modules/gallery/helpers/task.php @@ -56,6 +56,8 @@ class task_Core { } $task->done = 1; $task->state = "cancelled"; + $task->log(t("Task %task_name cancelled (task id %task_id)", + array("task_name" => $task->name, "task_id" => $task->id))); $task->save(); return $task; @@ -74,9 +76,20 @@ class task_Core { throw new Exception("@todo MISSING_TASK"); } - $task->state = "running"; - call_user_func_array($task->callback, array(&$task)); - $task->save(); + try { + $task->state = "running"; + call_user_func_array($task->callback, array(&$task)); + if ($task->done) { + $task->log($task->status); + } + $task->save(); + } catch (Exception $e) { + $task->log($e->__toString()); + $task->state = "error"; + $task->done = true; + $task->status = $e->getMessage(); + $task->save(); + } return $task; } |