diff --git a/classes/Module.php b/classes/Module.php index 932520c06..839d217ca 100644 --- a/classes/Module.php +++ b/classes/Module.php @@ -458,8 +458,13 @@ abstract class ModuleCore $needNewConfigFile = true; if ($useConfig AND $xml_exist) { + libxml_use_internal_errors(true); $xml_module = simplexml_load_file($configFile); - if ((int)$xml_module->need_instance == 0 AND !$needNewConfigFile) + foreach (libxml_get_errors() as $error) + $errors[] = '['.$module.'] '.Tools::displayError('Error found in config file:').' '.htmlentities($error->message); + libxml_clear_errors(); + + if (!count($errors) AND (int)$xml_module->need_instance == 0 AND !$needNewConfigFile) { $file = _PS_MODULE_DIR_.$module.'/'.Language::getIsoById($cookie->id_lang).'.php'; if (Tools::file_exists_cache($file) AND include_once($file)) @@ -976,11 +981,11 @@ abstract class ModuleCore $xml = ' '.$this->name.' - '.html_entity_decode(addslashes($this->displayName), ENT_COMPAT, 'UTF-8').' + '.Tools::htmlentitiesUTF8($this->displayName).' '.$this->version.' - '.html_entity_decode(addslashes(strip_tags($this->description)), ENT_COMPAT, 'UTF-8').' - '.html_entity_decode(addslashes(strip_tags($this->author)), ENT_COMPAT, 'UTF-8').' - '.html_entity_decode(addslashes($this->tab), ENT_COMPAT, 'UTF-8').''.(isset($this->confirmUninstall) ? "\n\t".''.$this->confirmUninstall.'' : '').' + '.Tools::htmlentitiesUTF8($this->description).' + '.Tools::htmlentitiesUTF8($this->author).' + '.Tools::htmlentitiesUTF8($this->tab).''.(isset($this->confirmUninstall) ? "\n\t".''.$this->confirmUninstall.'' : '').' '.(int)method_exists($this, 'getContent').' '.$need_instance.''.(isset($this->limited_countries) ? "\n\t".''.(sizeof($this->limited_countries) == 1 ? $this->limited_countries[0] : '').'' : '').' ';