]> git.mxchange.org Git - friendica.git/commitdiff
Better reshare detection
authorMichael Vogel <icarus@dabo.de>
Wed, 16 Mar 2016 20:27:07 +0000 (21:27 +0100)
committerMichael Vogel <icarus@dabo.de>
Wed, 16 Mar 2016 20:27:07 +0000 (21:27 +0100)
include/diaspora.php

index f7c38c22710acbddf9864864194b082760cfbb16..4a6cbad1310daaf03b9e3869298d65268b2266fc 100644 (file)
@@ -1600,7 +1600,7 @@ class diaspora {
 
                        // Maybe it is already a reshared item?
                        // Then refetch the content, since there can be many side effects with reshared posts from other networks or reshares from reshares
-                       if (self::is_reshare($r[0]["body"]))
+                       if (self::is_reshare($r[0]["body"], false))
                                $r = array();
                        else
                                return $r[0];
@@ -2130,7 +2130,7 @@ class diaspora {
                return self::build_and_transmit($owner, $contact, "retraction", $message);
        }
 
-       public static function is_reshare($body) {
+       public static function is_reshare($body, $complete = true) {
                $body = trim($body);
 
                // Skip if it isn't a pure repeated messages
@@ -2147,6 +2147,10 @@ class diaspora {
                if ($body == $attributes)
                        return(false);
 
+               // If we don't do the complete check we quit here
+               if (!$complete)
+                       return true;
+
                $guid = "";
                preg_match("/guid='(.*?)'/ism", $attributes, $matches);
                if ($matches[1] != "")