diff --git a/change_log.txt b/change_log.txt index fd0d581c..bf807747 100644 --- a/change_log.txt +++ b/change_log.txt @@ -1,3 +1,6 @@ +19/10/2010 +- change Smarty does no longer mask out E_NOTICE by default during template processing + 13/10/2010 - bugfix removed ambiguity between ternary and stream variable in template syntax - bugfix use caching properties of template instead of smarty object when compiling child {block} diff --git a/libs/Smarty.class.php b/libs/Smarty.class.php index dc422d0f..6186dc1e 100644 --- a/libs/Smarty.class.php +++ b/libs/Smarty.class.php @@ -310,8 +310,9 @@ class Smarty extends Smarty_Internal_Data { // create template object if necessary ($template instanceof $this->template_class)? $_template = $template : $_template = $this->createTemplate ($template, $cache_id, $compile_id, $parent); - $_smarty_old_error_level = $this->debugging ? error_reporting() : error_reporting(isset($this->error_reporting) - ? $this->error_reporting : error_reporting() &~E_NOTICE); + if (isset($this->error_reporting)) { + $_smarty_old_error_level = error_reporting($this->error_reporting); + } // obtain data for cache modified check if ($this->cache_modified_check && $this->caching && $display) { $_isCached = $_template->isCached() && !$_template->has_nocache_code; @@ -328,7 +329,9 @@ class Smarty extends Smarty_Internal_Data { $_output = $_template->getRenderedTemplate(); } $_template->rendered_content = null; - error_reporting($_smarty_old_error_level); + if (isset($this->error_reporting)) { + error_reporting($_smarty_old_error_level); + } // display or fetch if ($display) { if ($this->caching && $this->cache_modified_check) { diff --git a/libs/sysplugins/smarty_internal_compile_private_special_variable.php b/libs/sysplugins/smarty_internal_compile_private_special_variable.php index ec628b05..886d345f 100644 --- a/libs/sysplugins/smarty_internal_compile_private_special_variable.php +++ b/libs/sysplugins/smarty_internal_compile_private_special_variable.php @@ -104,7 +104,7 @@ class Smarty_Internal_Compile_Private_Special_Variable extends Smarty_Internal_C $compiled_ref = $compiled_ref . "[$_ind]"; } } - return $compiled_ref; + return "(isset($compiled_ref)? $compiled_ref : null)"; } }