From: Roland Häder <Quix0r@users.noreply.github.com>
Date: Tue, 17 Jul 2018 20:28:20 +0000 (+0200)
Subject: Fixes for OEmbed class (#5392)
X-Git-Url: https://git.mxchange.org/?a=commitdiff_plain;h=fd8897851f9beab93d8ec3d0472937225c8f5118;p=friendica.git

Fixes for OEmbed class (#5392)

* Fixes:
- stdClass is clearly an object of `\stdClass`, so let's import it and set it
  as type-hint here
- if $o->type is not found, don't continue

Signed-off-by: Roland Häder <roland@mxchange.org>

* Fix for a fix due to 02:51 a.m. (!) edits ...

Signed-off-by: Roland Häder <roland@mxchange.org>
---

diff --git a/src/Content/OEmbed.php b/src/Content/OEmbed.php
index 360a0dc489..390f3ea868 100644
--- a/src/Content/OEmbed.php
+++ b/src/Content/OEmbed.php
@@ -20,6 +20,7 @@ use DOMNode;
 use DOMText;
 use DOMXPath;
 use Exception;
+use stdClass;
 
 require_once 'include/dba.php';
 require_once 'mod/proxy.php';
@@ -163,11 +164,12 @@ class OEmbed
 		return $j;
 	}
 
-	private static function formatObject($j)
+	private static function formatObject(stdClass $j)
 	{
 		$embedurl = $j->embedurl;
 		$jhtml = $j->html;
 		$ret = '<div class="oembed ' . $j->type . '">';
+
 		switch ($j->type) {
 			case "video":
 				if (isset($j->thumbnail_url)) {
@@ -326,7 +328,7 @@ class OEmbed
 
 		$o = self::fetchURL($url, !self::isAllowedURL($url));
 
-		if (!is_object($o) || $o->type == 'error') {
+		if (!is_object($o) || property_exists($o, 'type') && $o->type == 'error') {
 			throw new Exception('OEmbed failed for URL: ' . $url);
 		}