From 909cbd75b81cfb0c54692c5aec47fdabc61531a6 Mon Sep 17 00:00:00 2001 From: Andrew Nacin Date: Mon, 3 Sep 2012 21:42:24 +0000 Subject: [PATCH] Fix oEmbed when the provider only supports XML responses. [20539] removed string casts that would have taken place on SimpleXMLElement objects, which implement toString. Instead, convert the SimpleXMLElement object to a stdClass object before we leave _parse_xml(), for consistency with the simple object returned from _parse_json(). see #20246. for trunk. git-svn-id: https://develop.svn.wordpress.org/trunk@21701 602fd350-edb4-49c9-b593-d223f7449a82 --- wp-includes/class-oembed.php | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/wp-includes/class-oembed.php b/wp-includes/class-oembed.php index 591f017363..f2fc024702 100644 --- a/wp-includes/class-oembed.php +++ b/wp-includes/class-oembed.php @@ -213,8 +213,14 @@ class WP_oEmbed { $errors = libxml_use_internal_errors( 'true' ); $data = simplexml_load_string( $response_body ); libxml_use_internal_errors( $errors ); - if ( is_object( $data ) ) - return $data; + if ( ! is_object( $data ) ) + return false; + + $return = new stdClass; + foreach ( $data as $key => $value ) + $return->$key = (string) $value; + + return $return; } return false; }