aboutsummaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorredmatrix <redmatrix@redmatrix.me>2015-09-30 16:31:06 -0700
committerredmatrix <redmatrix@redmatrix.me>2015-09-30 16:31:06 -0700
commit54e7d5d260bcec0132939bdb6a3e14780d46a27c (patch)
treeeeabc2bc3b4569d89f20fedf6b973cbab9f118ee /include
parent4b7c052ed8fa3075ce4b5e9585574f2e712cb426 (diff)
parent5265c190d4011a7362774f86ad82a05f4f87f2b8 (diff)
downloadvolse-hubzilla-54e7d5d260bcec0132939bdb6a3e14780d46a27c.tar.gz
volse-hubzilla-54e7d5d260bcec0132939bdb6a3e14780d46a27c.tar.bz2
volse-hubzilla-54e7d5d260bcec0132939bdb6a3e14780d46a27c.zip
Merge https://github.com/redmatrix/redmatrix into pending_merge
Conflicts: include/zot.php view/de/messages.po view/de/strings.php
Diffstat (limited to 'include')
-rw-r--r--include/zot.php17
1 files changed, 14 insertions, 3 deletions
diff --git a/include/zot.php b/include/zot.php
index a6d7fce06..e9132b7a5 100644
--- a/include/zot.php
+++ b/include/zot.php
@@ -1569,6 +1569,8 @@ function process_delivery($sender, $arr, $deliveries, $relay, $public = false, $
}
}
+logger('sender: ' . print_r($sender,true));
+
foreach($deliveries as $d) {
$local_public = $public;
@@ -1587,8 +1589,17 @@ function process_delivery($sender, $arr, $deliveries, $relay, $public = false, $
$channel = $r[0];
$DR->addto_recipient($channel['channel_name'] . ' <' . $channel['channel_address'] . '@' . get_app()->get_hostname() . '>');
-// breaks comments?
-// if($d['hash'] === $sender['hash']) {
+ /**
+ * @FIXME: Somehow we need to block normal message delivery from our clones, as the delivered
+ * message doesn't have ACL information in it as the cloned copy does. That copy
+ * will normally arrive first via sync delivery, but this isn't guaranteed.
+ * There's a chance the current delivery could take place before the cloned copy arrives
+ * hence the item could have the wrong ACL and *could* be used in subsequent deliveries or
+ * access checks. So far all attempts at identifying this situation precisely
+ * have caused issues with delivery of relayed comments.
+ */
+
+// if(($d['hash'] === $sender['hash']) && ($sender['url'] !== z_root()) && (! $relay)) {
// $DR->update('self delivery ignored');
// $result[] = $DR->get();
// continue;
@@ -3856,4 +3867,4 @@ function check_zotinfo($channel,$locations,&$ret) {
}
}
}
-} \ No newline at end of file
+}