diff -up ./src/JMS/Serializer/XmlDeserializationVisitor.php.php8 ./src/JMS/Serializer/XmlDeserializationVisitor.php --- ./src/JMS/Serializer/XmlDeserializationVisitor.php.php8 2021-03-31 13:54:50.261719313 +0200 +++ ./src/JMS/Serializer/XmlDeserializationVisitor.php 2021-03-31 13:54:57.315695261 +0200 @@ -48,7 +48,7 @@ class XmlDeserializationVisitor extends $previous = libxml_use_internal_errors(true); libxml_clear_errors(); - $previousEntityLoaderState = libxml_disable_entity_loader($this->disableExternalEntities); + $previousEntityLoaderState = @libxml_disable_entity_loader($this->disableExternalEntities); if (false !== stripos($data, 'getDomDocumentTypeEntitySubset($data); @@ -63,7 +63,7 @@ class XmlDeserializationVisitor extends $doc = simplexml_load_string($data); libxml_use_internal_errors($previous); - libxml_disable_entity_loader($previousEntityLoaderState); + @libxml_disable_entity_loader($previousEntityLoaderState); if (false === $doc) { throw new XmlErrorException(libxml_get_last_error()); @@ -176,7 +176,7 @@ class XmlDeserializationVisitor extends $nodes = $data->xpath($entryName); } - if (!\count($nodes)) { + if (!($nodes && \count($nodes))) { if (null === $this->result) { return $this->result = array(); }