diff options
author | Brion Vibber <brion@pobox.com> | 2010-09-16 14:43:27 -0700 |
---|---|---|
committer | Brion Vibber <brion@pobox.com> | 2010-09-16 14:43:27 -0700 |
commit | 097d0bd2faad9e067367e88e4ad166b14b0f98b6 (patch) | |
tree | e62e43da9b29d20fd5ac4ba8d69240011e66ce05 /plugins/OStatus/classes/HubSub.php | |
parent | b98abc3ae77965c6935bfb87eef61a3cc436e82f (diff) |
Ticket #2731: Fix for regression in posting to remote groups (regression in 2d4e0693c88bb8cad47f917db3ac5ecfacf28619)
Changes in 2d4e0693c88bb8cad47f917db3ac5ecfacf28619 changed Ostatus_profile::filterReplies() (which sorts out the local, remote, and group recipients on incoming remote messages) from checking for remote profiles with a safe call to Ostatus_profile::staticGet() to calls through Ostatus_profile::ensureProfileURL() and Ostatus_profile::ensureWebfinger(), which throw exceptions and thus abort processing.
Since this was done before checking for local groups, the filter would fail when the ensure* functions determined it was looking at a local group and rightfully refused to create a remote group profile for it.
Changing the calls to the ensure* functions was done so we can record remote reply recipients for future reply-to-reply processing (the staticGet() call was a cheaper way to do a lookup when we knew we only actually had to process groups that somebody signed up to); most important fix is simply to actually check for the exception! :)
Here I'm changing the order of processing so we do the local group lookup first -- where it's nice and safe -- and then when we do the remote checks, we'll go ahead and gracefully skip that entry if the full remote lookup fails, so we'll still process any following recipients.
Diffstat (limited to 'plugins/OStatus/classes/HubSub.php')
0 files changed, 0 insertions, 0 deletions