Avoid infinite loops by not passing real content text, so other app doesn't try to expand custom fields too

This commit is contained in:
Nathan Gray 2012-04-18 16:21:24 +00:00
parent 9cb6cf0caa
commit 5b8b8fd838

View File

@ -1145,7 +1145,10 @@ abstract class bo_merge
{ {
$classname = "{$field_app}_merge"; $classname = "{$field_app}_merge";
$class = new $classname(); $class = new $classname();
$app_replacements[$field_app] = $class->get_replacements($values['#'.$field], $placeholders[$index]); // If we send the real content, it can result in infinite loop of lookups
// This means you can't do {{#other_app/#other_app_cf/n_fn}}
$content = '';
$app_replacements[$field_app] = $class->get_replacements($values['#'.$field], $content);
} }
$replacements[$placeholders[$index]] = $app_replacements[$field_app]['$$'.$sub[$index].'$$']; $replacements[$placeholders[$index]] = $app_replacements[$field_app]['$$'.$sub[$index].'$$'];
} }