We are no longer offering accounts on this server. Consider https://gitlab.freedesktop.org/ as a place to host projects.

Commit 17b14926 authored by Evan Prodromou's avatar Evan Prodromou

better ID from shared activities

parent e7ad9bf1
......@@ -534,17 +534,21 @@ class Ostatus_profile extends Managed_DataObject
// XXX: process*() should return the new or existing notice. They don't, so we have to
// go fishing for it now.
$sharedNotice = Notice::staticGet('uri', $shared->id);
$sharedId = ($shared->id) ? $shared->id : $shared->objects[0]->id;
$sharedNotice = Notice::staticGet('uri', $sharedId);
if (empty($sharedNotice)) {
throw new ClientException(sprintf(_m("Failed to save activity %d"),
// The id URI will be used as a unique identifier for for the notice,
// protecting against duplicate saves. It isn't required to be a URL;
// tag: URIs for instance are found in Google Buzz feeds.
$sourceUri = $activity->id;
$dupe = Notice::staticGet('uri', $sourceUri);
if ($dupe) {
common_log(LOG_INFO, "OStatus: ignoring duplicate post: $sourceUri");
......@@ -552,6 +556,7 @@ class Ostatus_profile extends Managed_DataObject
// We'll also want to save a web link to the original notice, if provided.
$sourceUrl = null;
if ($activity->link) {
$sourceUrl = $activity->link;
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment