From cbc89a70a66001976256c84a3d5b8145e52cfe07 Mon Sep 17 00:00:00 2001 From: megachriz <megachriz@654114.no-reply.drupal.org> Date: Tue, 16 Apr 2013 21:15:33 -0700 Subject: [PATCH] Issue #1953008 by MegaChriz | carn1x: Fixed PHP Fatal error: Nesting level too deep - recursive dependency? in FeedsProcessor.inc on line 199. --- plugins/FeedsProcessor.inc | 30 +++++++++++++++++++++++++----- 1 file changed, 25 insertions(+), 5 deletions(-) diff --git a/plugins/FeedsProcessor.inc b/plugins/FeedsProcessor.inc index 57f98b7e..bf8c3fb8 100755 --- a/plugins/FeedsProcessor.inc +++ b/plugins/FeedsProcessor.inc @@ -252,11 +252,7 @@ abstract class FeedsProcessor extends FeedsPlugin { catch (Exception $e) { $state->failed++; drupal_set_message($e->getMessage(), 'warning'); - $message = $e->getMessage(); - $message .= '<h3>Original item</h3>'; - $message .= '<pre>' . var_export($item, TRUE) . '</pre>'; - $message .= '<h3>Entity</h3>'; - $message .= '<pre>' . var_export($entity, TRUE) . '</pre>'; + $message = $this->createLogMessage($e, $entity, $item); $source->log('import', $message, array(), WATCHDOG_ERROR); } } @@ -784,6 +780,30 @@ abstract class FeedsProcessor extends FeedsPlugin { } return ''; } + + /** + * Creates a log message for when an exception occured during import. + * + * @param Exception $e + * The exception that was throwned during processing the item. + * @param $entity + * The entity object. + * @param $item + * The parser result for this entity. + * + * @return string + * The message to log. + */ + protected function createLogMessage(Exception $e, $entity, $item) { + include_once DRUPAL_ROOT . '/includes/utility.inc'; + $message = $e->getMessage(); + $message .= '<h3>Original item</h3>'; + $message .= '<pre>' . drupal_var_export($item). '</pre>'; + $message .= '<h3>Entity</h3>'; + $message .= '<pre>' . drupal_var_export($entity) . '</pre>'; + return $message; + } + } class FeedsProcessorBundleNotDefined extends Exception {} -- GitLab