From 3f37f65790cf8851d575d1db2b463bc8240164dd Mon Sep 17 00:00:00 2001 From: nanaya Date: Tue, 7 Nov 2023 22:11:48 +0900 Subject: [PATCH] Fix opengraph on legacy comment with nonexistent user --- app/Libraries/Opengraph/CommentOpengraph.php | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/app/Libraries/Opengraph/CommentOpengraph.php b/app/Libraries/Opengraph/CommentOpengraph.php index 8aa4cdb9612..cd9756b51a1 100644 --- a/app/Libraries/Opengraph/CommentOpengraph.php +++ b/app/Libraries/Opengraph/CommentOpengraph.php @@ -17,13 +17,17 @@ public function __construct(private Comment $comment) public function get(): array { + if (!priv_check_user(null, 'CommentShow', $this->comment)->can()) { + return []; + } + $user = $this->comment->user; + $username = $user?->username ?? $this->comment->legacyName() ?? osu_trans('users.deleted'); - return priv_check_user(null, 'CommentShow', $this->comment)->can() - ? [ - 'description' => blade_safe(html_excerpt($this->comment->message_html, 100)), - 'image' => $user->user_avatar, - 'title' => osu_trans('comments.ogp.title', ['user' => $user->username]), - ] : []; + return [ + 'description' => blade_safe(html_excerpt($this->comment->message_html, 100)), + 'image' => $user?->user_avatar, + 'title' => osu_trans('comments.ogp.title', ['user' => $username]), + ]; } }