From e829f852b4d68d90b8f7280585ecd21de0846313 Mon Sep 17 00:00:00 2001 From: Kyren223 Date: Fri, 10 Jan 2025 17:37:49 +0200 Subject: Fixed crashes --- internal/client/ui/core/networklist/networklist.go | 3 ++- internal/client/ui/core/state/state.go | 11 ++++++++--- 2 files changed, 10 insertions(+), 4 deletions(-) (limited to 'internal/client') diff --git a/internal/client/ui/core/networklist/networklist.go b/internal/client/ui/core/networklist/networklist.go index 597a391..ac1460c 100644 --- a/internal/client/ui/core/networklist/networklist.go +++ b/internal/client/ui/core/networklist/networklist.go @@ -79,7 +79,8 @@ func (m Model) View() string { lipgloss.Color(network.FgHexColor), lipgloss.Color(network.BgHexColor), ) - if *state.NetworkId(m.index) == i { + networkId := state.NetworkId(m.index) + if networkId != nil && *networkId == i { builder.WriteString(lipgloss.JoinHorizontal( ui.Center, selectedIndicator, diff --git a/internal/client/ui/core/state/state.go b/internal/client/ui/core/state/state.go index db5ab6a..2b71a75 100644 --- a/internal/client/ui/core/state/state.go +++ b/internal/client/ui/core/state/state.go @@ -75,6 +75,9 @@ func UpdateNetworks(info *packet.NetworksInfo) { networks[network.ID] = network.Network State.Frequencies[network.ID] = network.Frequencies for _, member := range network.Members { + if State.Members[network.ID] == nil { + State.Members[network.ID] = map[snowflake.ID]data.Member{} + } State.Members[network.ID][member.UserID] = member } @@ -136,12 +139,14 @@ func UpdateMessages(info *packet.MessagesInfo) { } func UpdateMembers(info *packet.MembersInfo) { - members := State.Members[info.Network] for _, member := range info.Members { - members[member.UserID] = member + if State.Members[info.Network] == nil { + State.Members[info.Network] = map[snowflake.ID]data.Member{} + } + State.Members[info.Network][member.UserID] = member } for _, removedMember := range info.RemovedMembers { - delete(members, removedMember) + delete(State.Members[info.Network], removedMember) if removedMember != *State.UserID { continue -- cgit v1.3.1