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-19 14:20:17 +00:00
parent c41c9f79d9
commit 4300e20195

View File

@ -1109,7 +1109,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].'$$'];
} }