From 2c225f30f53143205f6aa37fc2af984cb95dc634 Mon Sep 17 00:00:00 2001 From: Colin Kuskie Date: Mon, 2 Apr 2012 18:33:38 -0700 Subject: [PATCH] Do not attempt to change the status on an inbox message which doesn't exist. Fixes bug #12349. --- docs/changelog/7.x.x.txt | 1 + lib/WebGUI/Friends.pm | 5 ++++- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/docs/changelog/7.x.x.txt b/docs/changelog/7.x.x.txt index 93f2b6374..9c67f3ab4 100644 --- a/docs/changelog/7.x.x.txt +++ b/docs/changelog/7.x.x.txt @@ -12,6 +12,7 @@ - fixed: Crud updateFromFormPost - fixed: encryptLogin and sslEnabled both need to be true - fixed: Cache's setByHTTP method returns content, even when it gets an error in the request. This gives the SC asset fits. + - fixed #12349: Friends invitation error 7.10.24 - fixed #12318: asset error causes asset manager to fail diff --git a/lib/WebGUI/Friends.pm b/lib/WebGUI/Friends.pm index a8fbdea9f..c3c0e2059 100644 --- a/lib/WebGUI/Friends.pm +++ b/lib/WebGUI/Friends.pm @@ -320,7 +320,10 @@ sub rejectAddRequest { status => 'unread', }); } - $inbox->getMessage($invite->{messageId})->setStatus('completed'); + my $invitation = $inbox->getMessage($invite->{messageId}); + if ($invitation) { + $invitation->setStatus('completed'); + } $self->session->db->deleteRow("friendInvitations", "inviteId", $inviteId); }