Index: branches/RC/core/kernel/nparser/nparser.php =================================================================== diff -u -N -r9286 -r10027 --- branches/RC/core/kernel/nparser/nparser.php (.../nparser.php) (revision 9286) +++ branches/RC/core/kernel/nparser/nparser.php (.../nparser.php) (revision 10027) @@ -53,9 +53,13 @@ // appending any text/html data found before tag $this->Buffers[$this->Level] .= $tag_data[1][0]; if (!$this->InsideComment) { + $tmp_tag = $this->Application->CurrentNTag; + $this->Application->CurrentNTag = $tag; if ($this->ProcessTag($tag) === false) { + $this->Application->CurrentNTag = $tmp_tag; return false; } + $this->Application->CurrentNTag = $tmp_tag; } else { $this->Buffers[$this->Level] .= $tag_data[2][0].$tag_data[3][0].$tag_data[4][0]; @@ -205,7 +209,7 @@ } if ($prefix && strpos($prefix, '$') === false) { $p =& $this->GetProcessor($prefix); - if (!$p->CheckTag($tag['name'], $tag['prefix'])) { + if (!is_object($p) || !$p->CheckTag($tag['name'], $tag['prefix'])) { $this->Application->handleError(E_USER_ERROR, 'Unknown tag: '.$this->TagInfo($tag).' - incorrect tag name or prefix ', $tag['file'], $tag['line']); return false; }