diff --git a/importexport/inc/class.importexport_arrayxml.inc.php b/importexport/inc/class.importexport_arrayxml.inc.php index cd7386d5fd..7247eceb5c 100644 --- a/importexport/inc/class.importexport_arrayxml.inc.php +++ b/importexport/inc/class.importexport_arrayxml.inc.php @@ -79,7 +79,8 @@ class importexport_arrayxml { $n = &$_xml; } else { $n = new DOMDocument; - $n->loadXML($_xml); + $loaded = $n->loadXML($_xml); + if(!$loaded) return array(); } $xml_array = array(); diff --git a/importexport/inc/class.importexport_definition.inc.php b/importexport/inc/class.importexport_definition.inc.php index 1d180fdb25..a24a3e182e 100644 --- a/importexport/inc/class.importexport_definition.inc.php +++ b/importexport/inc/class.importexport_definition.inc.php @@ -78,10 +78,17 @@ class importexport_definition implements importexport_iface_egw_record { if ( !( importexport_definitions_bo::is_permitted($this->get_record_array()) || $this->is_admin)) { throw new Exception('Error: User "'.$this->user.'" is not permitted to get definition with identifier "'.$_identifier.'"!'); } - $options_data = importexport_arrayxml::xml2array( $this->definition['plugin_options'] ); - $this->definition['plugin_options'] = $options_data['root']; - if($this->definition['filter']) $filter = importexport_arrayxml::xml2array( $this->definition['filter'] ); - $this->definition['filter'] = $filter['root']; + try + { + $options_data = importexport_arrayxml::xml2array( $this->definition['plugin_options'] ); + $this->definition['plugin_options'] = $options_data['root']; + if($this->definition['filter']) $filter = importexport_arrayxml::xml2array( $this->definition['filter'] ); + $this->definition['filter'] = $filter['root']; + } + catch (Exception $e) + { + error_log($e->getMessage()); + } } }