dkforest

A forum and chat platform (onion)
git clone https://git.dasho.dev/n0tr1v/dkforest.git
Log | Files | Refs | LICENSE

commit 88e86710d77b30963fdb832fa422861d368d879a
parent f4963b93b697e537a6a022aba70e817845326274
Author: n0tr1v <n0tr1v@protonmail.com>
Date:   Fri, 26 May 2023 16:47:50 -0700

Fix message not being displayed in private rooms when more than one user in the room

Diffstat:
Mpkg/database/tableChatMessages.go | 8++++----
Mpkg/web/handlers/handlers.go | 2+-
2 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/pkg/database/tableChatMessages.go b/pkg/database/tableChatMessages.go @@ -239,7 +239,7 @@ func (m *ChatMessage) MsgToDisplay() string { func (m *ChatMessage) Delete(db *DkfDB) error { err := db.DeleteChatMessageByUUID(m.UUID) - MsgPubSub.Pub("room_"+m.RoomID.String(), ChatMessageType{Typ: DeleteMsg, Msg: m}) + MsgPubSub.Pub("room_"+m.RoomID.String(), ChatMessageType{Typ: DeleteMsg, Msg: *m}) return err } @@ -536,7 +536,7 @@ func (d *DkfDB) createMsg(raw, txt, roomKey string, roomID RoomID, userID UserID } out.System = system err = d.db.Create(&out).Error - MsgPubSub.Pub("room_"+roomID.String(), ChatMessageType{Typ: CreateMsg, Msg: &out}) + MsgPubSub.Pub("room_"+roomID.String(), ChatMessageType{Typ: CreateMsg, Msg: out}) return } @@ -580,7 +580,7 @@ func (d *DkfDB) CreateOrEditMessage( } } editMsg.DoSave(d) - MsgPubSub.Pub("room_"+roomID.String(), ChatMessageType{Typ: typ, Msg: editMsg}) + MsgPubSub.Pub("room_"+roomID.String(), ChatMessageType{Typ: typ, Msg: *editMsg}) return editMsg.ID, nil } @@ -597,7 +597,7 @@ const ( type ChatMessageType struct { Typ PubSubMessageType - Msg *ChatMessage + Msg ChatMessage } var MsgPubSub = pubsub.NewPubSub[ChatMessageType]() diff --git a/pkg/web/handlers/handlers.go b/pkg/web/handlers/handlers.go @@ -5140,7 +5140,7 @@ Loop: continue } - msg := msgTyp.Msg + msg := &msgTyp.Msg if room.IsProtected() { if err := msg.Decrypt(roomKey); err != nil { return c.Redirect(http.StatusFound, "/")