From 8ba9279cc7fe6b4409d527ca6fffa0eb6425d609 Mon Sep 17 00:00:00 2001 From: Tulir Asokan Date: Mon, 10 Feb 2025 22:33:16 +0200 Subject: [PATCH] web/rightpanel: fix handling non-string displaynames in member events --- web/src/ui/rightpanel/UserInfo.tsx | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/web/src/ui/rightpanel/UserInfo.tsx b/web/src/ui/rightpanel/UserInfo.tsx index dd10c81..f50ef13 100644 --- a/web/src/ui/rightpanel/UserInfo.tsx +++ b/web/src/ui/rightpanel/UserInfo.tsx @@ -18,7 +18,7 @@ import { PuffLoader } from "react-spinners" import { getAvatarURL } from "@/api/media.ts" import { useRoomMember } from "@/api/statestore" import { MemberEventContent, UserID, UserProfile } from "@/api/types" -import { getLocalpart } from "@/util/validation.ts" +import { ensureString, getLocalpart } from "@/util/validation.ts" import ClientContext from "../ClientContext.ts" import { LightboxContext } from "../modal" import { RoomContext } from "../roomview/roomcontext.ts" @@ -51,8 +51,9 @@ const UserInfo = ({ userID }: UserInfoProps) => { ) }, [userID, client]) useEffect(() => refreshProfile(true), [refreshProfile]) - - const displayname = member?.displayname || globalProfile?.displayname || getLocalpart(userID) + const displayname = ensureString(member?.displayname) + || ensureString(globalProfile?.displayname) + || getLocalpart(userID) return <>
{member === null && globalProfile === null && errors == null ?