diff --git a/CHANGELOG.md b/CHANGELOG.md index 4c4e93e8..30d022db 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -9,6 +9,9 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Changed - modifier escape now triggers a E_USER_NOTICE when an unsupported escape type is used https://github.com/smarty-php/smarty/pull/649 +### Fixed +- Fixed render crash when using inline include with a string template https://github.com/smarty-php/smarty/issues/639 + ## [3.1.39] - 2021-02-17 ### Security diff --git a/libs/sysplugins/smarty_internal_template.php b/libs/sysplugins/smarty_internal_template.php index bae22a7d..d6f24c8f 100644 --- a/libs/sysplugins/smarty_internal_template.php +++ b/libs/sysplugins/smarty_internal_template.php @@ -317,7 +317,7 @@ class Smarty_Internal_Template extends Smarty_Internal_TemplateBase $tpl->template_resource = $template; $tpl->cache_id = $cache_id; $tpl->compile_id = $compile_id; - if (isset($uid)) { + if (isset($uid) && isset($tpl->compiled->file_dependency[ $uid ])) { // for inline templates we can get all resource information from file dependency list($filepath, $timestamp, $type) = $tpl->compiled->file_dependency[ $uid ]; $tpl->source = new Smarty_Template_Source($smarty, $filepath, $type, $filepath);