diff --git a/typo3/sysext/scheduler/Classes/Scheduler.php b/typo3/sysext/scheduler/Classes/Scheduler.php index 2b81ce75864d..954f98ae2b50 100644 --- a/typo3/sysext/scheduler/Classes/Scheduler.php +++ b/typo3/sysext/scheduler/Classes/Scheduler.php @@ -249,6 +249,7 @@ public function removeTask(Task\AbstractTask $task) */ public function saveTask(Task\AbstractTask $task) { + $result = true; $taskUid = $task->getTaskUid(); if (!empty($taskUid)) { try { @@ -270,14 +271,18 @@ public function saveTask(Task\AbstractTask $task) 'task_group' => $task->getTaskGroup(), 'serialized_task_object' => serialize($task) ]; - $result = GeneralUtility::makeInstance(ConnectionPool::class) - ->getConnectionForTable('tx_scheduler_task') - ->update( - 'tx_scheduler_task', - $fields, - ['uid' => $taskUid], - ['serialized_task_object' => Connection::PARAM_LOB] - ); + try { + GeneralUtility::makeInstance(ConnectionPool::class) + ->getConnectionForTable('tx_scheduler_task') + ->update( + 'tx_scheduler_task', + $fields, + ['uid' => $taskUid], + ['serialized_task_object' => Connection::PARAM_LOB] + ); + } catch (\Doctrine\DBAL\DBALException $e) { + $result = false; + } } else { $result = false; }