Open Sei-Lisa opened 10 years ago
Test case:
<?php
include('class.geshi.php');
require_once GESHI_CLASSES_ROOT.'class.geshirenderer.php';
require_once GESHI_RENDERERS_ROOT.'class.geshirendererxml.php';
$geshi = new GeSHi('var a = 1.0;
// comment
function x() {
var b = Math.PI;
var c = "string\\n" + \'string\';
return b;
}
', 'javascript');
$geshi->setRenderer(new GeSHiRendererXML);
echo $geshi->parseCode();
Without patch:
Fatal error: Cannot access private property GeSHiStyler::$language in /<path>/geshi/classes/renderers/class.geshirendererxml.php on line 129With patch, output is generated but it includes css="Array" everywhere in the output, as expected as per issue #3.
The XML renderer crashed because two styler properties it expected to be public are now private. Fixed by adding the corresponding getXXX functions to the styler.