From a3f5b3ae6ce45cea6cb9bee6bfa2e1626d5a16f9 Mon Sep 17 00:00:00 2001 From: Colin Kuskie Date: Tue, 10 Jul 2012 16:12:29 -0700 Subject: [PATCH] Handle the case when a friend approve message no longer exist. --- 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 6d7ae7880..b512af54a 100644 --- a/docs/changelog/7.x.x.txt +++ b/docs/changelog/7.x.x.txt @@ -24,6 +24,7 @@ - fixed #12345: tickets in trash still show up - fixed #12305: dbSlave breaks WebGUI when not able to connect - fixed: Http Proxy assets with no URL to proxy cannot be deleted. + - fixed: Friends request messages that no longer exist throw a warning. 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 c3c0e2059..861334730 100644 --- a/lib/WebGUI/Friends.pm +++ b/lib/WebGUI/Friends.pm @@ -96,7 +96,10 @@ sub approveAddRequest { status => 'unread', sentBy => $self->user->userId, }); - $inbox->getMessage($invite->{messageId})->setStatus('completed'); + my $message = $inbox->getMessage($invite->{messageId}); + if ($message) { + $message->setStatus('completed'); + } $db->deleteRow("friendInvitations", "inviteId", $inviteId); }