Replace CDATA with proper escape in XML output

This commit is contained in:
Kijin Sung 2017-02-27 22:47:26 +09:00
parent 990876515b
commit fda9763e82

View file

@ -14,8 +14,8 @@ class XMLDisplayHandler
$variables = $oModule->getVariables();
$xmlDoc = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<response>\n";
$xmlDoc .= sprintf("<error>%s</error>\n", $oModule->getError());
$xmlDoc .= sprintf("<message>%s</message>\n", str_replace(array('<', '>', '&'), array('&lt;', '&gt;', '&amp;'), $oModule->getMessage()));
$xmlDoc .= sprintf("<error>%s</error>\n", escape($oModule->getError()));
$xmlDoc .= sprintf("<message>%s</message>\n", escape($oModule->getMessage()));
$xmlDoc .= $this->_makeXmlDoc($variables);
@ -47,11 +47,11 @@ class XMLDisplayHandler
if(is_string($val))
{
$xmlDoc .= sprintf('<%s><![CDATA[%s]]></%s>%s', $key, $val, $key, "\n");
$xmlDoc .= sprintf('<%s>%s</%s>%s', $key, escape($val), $key, "\n");
}
else if(!is_array($val) && !is_object($val))
{
$xmlDoc .= sprintf('<%s>%s</%s>%s', $key, $val, $key, "\n");
$xmlDoc .= sprintf('<%s>%s</%s>%s', $key, escape($val), $key, "\n");
}
else
{