aboutsummaryrefslogtreecommitdiffstats
path: root/include/diaspora.php
diff options
context:
space:
mode:
authorzottel <github@zottel.net>2012-06-01 08:31:38 +0200
committerzottel <github@zottel.net>2012-06-01 08:31:38 +0200
commit08b335cac0a881b8f19793aaaebc6dacef445643 (patch)
tree46b41c1f463ab90588f109105c95e85dad8fd432 /include/diaspora.php
parent20fdbda25e7fa1c1f6e234867df495be1085f3f8 (diff)
parent93bc29a711637c84a4ffc380078277de89af4e6d (diff)
downloadvolse-hubzilla-08b335cac0a881b8f19793aaaebc6dacef445643.tar.gz
volse-hubzilla-08b335cac0a881b8f19793aaaebc6dacef445643.tar.bz2
volse-hubzilla-08b335cac0a881b8f19793aaaebc6dacef445643.zip
Merge remote branch 'upstream/master'
Diffstat (limited to 'include/diaspora.php')
-rw-r--r--include/diaspora.php16
1 files changed, 12 insertions, 4 deletions
diff --git a/include/diaspora.php b/include/diaspora.php
index 3f2cdf8e4..f7c2c5e8e 100644
--- a/include/diaspora.php
+++ b/include/diaspora.php
@@ -2055,8 +2055,12 @@ function diaspora_send_followup($item,$owner,$contact,$public_batch = false) {
$myaddr = $owner['nickname'] . '@' . substr($a->get_baseurl(), strpos($a->get_baseurl(),'://') + 3);
$theiraddr = $contact['addr'];
- $p = q("select guid from item where parent = %d limit 1",
- $item['parent']
+ // The first item in the `item` table with the parent id is the parent. However, MySQL doesn't always
+ // return the items ordered by `item`.`id`, in which case the wrong item is chosen as the parent.
+ // The only item with `parent` and `id` as the parent id is the parent item.
+ $p = q("select guid from item where parent = %d and id = %d limit 1",
+ intval($item['parent']),
+ intval($item['parent'])
);
if(count($p))
$parent_guid = $p[0]['guid'];
@@ -2111,8 +2115,12 @@ function diaspora_send_relay($item,$owner,$contact,$public_batch = false) {
$theiraddr = $contact['addr'];
- $p = q("select guid from item where parent = %d limit 1",
- $item['parent']
+ // The first item in the `item` table with the parent id is the parent. However, MySQL doesn't always
+ // return the items ordered by `item`.`id`, in which case the wrong item is chosen as the parent.
+ // The only item with `parent` and `id` as the parent id is the parent item.
+ $p = q("select guid from item where parent = %d and id = %d limit 1",
+ intval($item['parent']),
+ intval($item['parent'])
);
if(count($p))
$parent_guid = $p[0]['guid'];