diff options
author | Brion Vibber <brion@pobox.com> | 2009-11-25 12:07:19 -0800 |
---|---|---|
committer | Brion Vibber <brion@pobox.com> | 2009-11-25 12:11:41 -0800 |
commit | f1b64c4db52d6881c845704bfde3e3514e3ebe8f (patch) | |
tree | 57273d34e2b8b80338079539654ae8965ac1a508 | |
parent | 71d5990ea3fd7864c3595ea738f35c613d52b62f (diff) |
Fix fatal error on OMB subscription for first-timers
-rw-r--r-- | actions/finishremotesubscribe.php | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/actions/finishremotesubscribe.php b/actions/finishremotesubscribe.php index b1cec66f4..deee70f36 100644 --- a/actions/finishremotesubscribe.php +++ b/actions/finishremotesubscribe.php @@ -89,12 +89,16 @@ class FinishremotesubscribeAction extends Action } $remote = Remote_profile::staticGet('uri', $service->getListenerURI()); + if ($remote) { + // Note remote profile may not have been saved yet. + // @fixme not convinced this is correct at all! - $profile = Profile::staticGet($remote->id); + $profile = Profile::staticGet($remote->id); - if ($user->hasBlocked($profile)) { - $this->clientError(_('That user has blocked you from subscribing.')); - return; + if ($user->hasBlocked($profile)) { + $this->clientError(_('That user has blocked you from subscribing.')); + return; + } } /* Perform the handling itself via libomb. */ @@ -122,6 +126,7 @@ class FinishremotesubscribeAction extends Action /* The service URLs are not accessible from datastore, so setting them after insertion of the profile. */ + $remote = Remote_profile::staticGet('uri', $service->getListenerURI()); $orig_remote = clone($remote); $remote->postnoticeurl = |