dkforest

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

commit 2ca24fc5b6788c5b549df0c47cfa456f0de8624d
parent a2f3a7366469a852d1ede4356a6aec70a10f1eab
Author: n0tr1v <n0tr1v@protonmail.com>
Date:   Tue, 23 May 2023 22:20:16 -0700

simplify code

Diffstat:
Mpkg/web/handlers/handlers.go | 22+++++++++-------------
1 file changed, 9 insertions(+), 13 deletions(-)

diff --git a/pkg/web/handlers/handlers.go b/pkg/web/handlers/handlers.go @@ -4825,6 +4825,10 @@ func ChessGameHandler(c echo.Context) error { }) usersStreamsMapMtx.Lock() + if usersStreamsMap[authUser.ID] >= userMaxStream { + usersStreamsMapMtx.Unlock() + return nil + } usersStreamsMap[authUser.ID] += 1 usersStreamsMapMtx.Unlock() defer func() { @@ -4832,12 +4836,6 @@ func ChessGameHandler(c echo.Context) error { usersStreamsMap[authUser.ID] -= 1 usersStreamsMapMtx.Unlock() }() - usersStreamsMapMtx.RLock() - if usersStreamsMap[authUser.ID] > userMaxStream { - usersStreamsMapMtx.RUnlock() - return nil - } - usersStreamsMapMtx.RUnlock() c.Response().Header().Set(echo.HeaderContentType, echo.MIMETextHTMLCharsetUTF8) c.Response().WriteHeader(http.StatusOK) @@ -4927,7 +4925,7 @@ func ChatStreamMenuHandler(c echo.Context) error { const userMaxStream = 15 var usersStreamsMap = make(map[database.UserID]int64) -var usersStreamsMapMtx sync.RWMutex +var usersStreamsMapMtx sync.Mutex func ChatStreamMessagesHandler(c echo.Context) error { db := c.Get("database").(*database.DkfDB) @@ -4963,6 +4961,10 @@ func ChatStreamMessagesHandler(c echo.Context) error { }) usersStreamsMapMtx.Lock() + if usersStreamsMap[authUser.ID] >= userMaxStream { + usersStreamsMapMtx.Unlock() + return nil + } usersStreamsMap[authUser.ID] += 1 usersStreamsMapMtx.Unlock() defer func() { @@ -4970,12 +4972,6 @@ func ChatStreamMessagesHandler(c echo.Context) error { usersStreamsMap[authUser.ID] -= 1 usersStreamsMapMtx.Unlock() }() - usersStreamsMapMtx.RLock() - if usersStreamsMap[authUser.ID] > userMaxStream { - usersStreamsMapMtx.RUnlock() - return nil - } - usersStreamsMapMtx.RUnlock() c.Response().Header().Set(echo.HeaderContentType, echo.MIMETextHTMLCharsetUTF8) c.Response().WriteHeader(http.StatusOK)