summaryrefslogtreecommitdiff
path: root/includes
diff options
context:
space:
mode:
authorwebchick <webchick@24967.no-reply.drupal.org>2011-08-30 01:07:28 -0700
committerwebchick <webchick@24967.no-reply.drupal.org>2011-08-30 01:07:28 -0700
commit3379da9d7008c327115f49c47c2436e1e8ee73cd (patch)
tree6bd7f1bf97bcdad554848aceee25c4e35fb1cd3e /includes
parentd4c02d841c69cb8e83d9a69d9d2d105ed3a1f1d7 (diff)
downloadbrdo-3379da9d7008c327115f49c47c2436e1e8ee73cd.tar.gz
brdo-3379da9d7008c327115f49c47c2436e1e8ee73cd.tar.bz2
Issue #978944 by Aron Novak, chx, ksenzee: Fixed Handle exceptions thrown in cron.
Diffstat (limited to 'includes')
-rw-r--r--includes/common.inc10
1 files changed, 9 insertions, 1 deletions
diff --git a/includes/common.inc b/includes/common.inc
index 2f877ac2d..cbfdabb19 100644
--- a/includes/common.inc
+++ b/includes/common.inc
@@ -5040,7 +5040,15 @@ function drupal_cron_run() {
drupal_register_shutdown_function('drupal_cron_cleanup');
// Iterate through the modules calling their cron handlers (if any):
- module_invoke_all('cron');
+ foreach (module_implements('cron') as $module) {
+ // Do not let an exception thrown by one module disturb another.
+ try {
+ module_invoke($module, 'cron');
+ }
+ catch (Exception $e) {
+ watchdog_exception('cron', $e);
+ }
+ }
// Record cron time
variable_set('cron_last', REQUEST_TIME);