diff options
author | Zach Prezkuta <fermion@gmx.com> | 2012-06-02 16:11:31 -0600 |
---|---|---|
committer | Zach Prezkuta <fermion@gmx.com> | 2012-06-03 14:53:30 -0600 |
commit | 77962aa79df5671e206635cc6980e4b1ac969bf9 (patch) | |
tree | d3d5fe2a3db5a201a0f5f1d083053f6810f54be1 /include/delivery.php | |
parent | b000088ded0d0f677114da0af1c5ea6436a97560 (diff) | |
download | volse-hubzilla-77962aa79df5671e206635cc6980e4b1ac969bf9.tar.gz volse-hubzilla-77962aa79df5671e206635cc6980e4b1ac969bf9.tar.bz2 volse-hubzilla-77962aa79df5671e206635cc6980e4b1ac969bf9.zip |
Fix bugs in the retraction code
Currently, the following seems to be the functional status:
For a Diaspora top-level post:
Friendica comments show up AND delete
Diaspora comments show up AND delete for top-level owner
Diaspora comments show up for non-owner
Diaspora comments sometimes don't delete for non-owner
-> Appears to be Diaspora's fault, as a "not a valid object" error shows up in the log
Friendica likes show up, but can't unlike (Friendica doesn't even message Diaspora)
Diaspora likes show up
Diaspora non-owner can't unlike
-> Same as comments, seems to be Diaspora's fault
For a Friendica top-level post:
Friendica comments show up AND delete
Diaspora comments show up AND delete
Friendica likes don't show up in Diaspora sometimes
Friendica doesn't even message Diaspora for unlikes (sometimes?)
Diaspora likes and unlikes work
Diffstat (limited to 'include/delivery.php')
-rw-r--r-- | include/delivery.php | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/include/delivery.php b/include/delivery.php index 62c9f9202..235b766c5 100644 --- a/include/delivery.php +++ b/include/delivery.php @@ -509,13 +509,13 @@ function delivery_run($argv, $argc){ // unsupported break; } - elseif(($target_item['deleted']) && ($top_level) && ($target_item['verb'] !== ACTIVITY_LIKE)) { + elseif(($target_item['deleted']) && ($target_item['uri'] === $target_item['parent-uri']) && ($target_item['verb'] !== ACTIVITY_LIKE)) { logger('delivery: diaspora retract: ' . $loc); // diaspora delete, diaspora_send_retraction($target_item,$owner,$contact,$public_message); break; } - elseif($target_item['parent'] != $target_item['id']) { + elseif($target_item['uri'] !== $target_item['parent-uri']) { logger('delivery: diaspora relay: ' . $loc); |