aboutsummaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorzotlabs <mike@macgirvin.com>2018-04-29 23:05:38 -0700
committerMario Vavti <mario@mariovavti.com>2018-04-30 09:14:46 +0200
commitf620274c6a68ae9a2a6a5142947aa199862087fc (patch)
treeac35b01a6c3cca54a5cac5bb214d63c2dfcea959 /include
parentae5b3a83f1d6efafdbe2651ddc275385f1d4089c (diff)
downloadvolse-hubzilla-f620274c6a68ae9a2a6a5142947aa199862087fc.tar.gz
volse-hubzilla-f620274c6a68ae9a2a6a5142947aa199862087fc.tar.bz2
volse-hubzilla-f620274c6a68ae9a2a6a5142947aa199862087fc.zip
hubzilla issue #1119 - xml2array has issues with some unicode sequences/conversions. Working around it using the older simplexml parser until it can be debugged, as Diaspora does not use complex XML with namespaces; which is where we need the more advaced capabilities of xml2array.
Diffstat (limited to 'include')
-rw-r--r--include/network.php11
1 files changed, 11 insertions, 0 deletions
diff --git a/include/network.php b/include/network.php
index 72f1dacaf..8b7490a8a 100644
--- a/include/network.php
+++ b/include/network.php
@@ -648,6 +648,7 @@ function parse_xml_string($s, $strict = true) {
libxml_use_internal_errors(true);
+
$x = @simplexml_load_string($s2);
if($x === false) {
logger('libxml: parse: error: ' . $s2, LOGGER_DATA);
@@ -661,6 +662,16 @@ function parse_xml_string($s, $strict = true) {
return $x;
}
+
+function sxml2array ( $xmlObject, $out = array () )
+{
+ foreach ( (array) $xmlObject as $index => $node )
+ $out[$index] = ( is_object ( $node ) ) ? sxml2array ( $node ) : $node;
+
+ return $out;
+}
+
+
/**
* @brief Scales an external image.
*