From 739992508bc670d83689c94ad143d583065148ce Mon Sep 17 00:00:00 2001 From: Mrs4s <1844812067@qq.com> Date: Tue, 18 Aug 2020 01:06:07 +0800 Subject: [PATCH] fix lock. --- client/decoders.go | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/client/decoders.go b/client/decoders.go index c5f48261..e3cca290 100644 --- a/client/decoders.go +++ b/client/decoders.go @@ -135,8 +135,6 @@ func decodePushReqPacket(c *QQClient, _ uint16, payload []byte) (interface{}, er } func decodeMessageSvcPacket(c *QQClient, _ uint16, payload []byte) (interface{}, error) { - c.msgSvcLock.Lock() - defer c.msgSvcLock.Unlock() rsp := msg.GetMessageResponse{} err := proto.Unmarshal(payload, &rsp) if err != nil { @@ -297,8 +295,10 @@ func decodeGroupMessagePacket(c *QQClient, _ uint16, payload []byte) (interface{ } func decodeSvcNotify(c *QQClient, _ uint16, _ []byte) (interface{}, error) { - _, pkt := c.buildGetMessageRequestPacket(msg.SyncFlag_START, time.Now().Unix()) - return nil, c.send(pkt) + c.msgSvcLock.Lock() + defer c.msgSvcLock.Unlock() + _, err := c.sendAndWait(c.buildGetMessageRequestPacket(msg.SyncFlag_START, time.Now().Unix())) + return nil, err } func decodeFriendGroupListResponse(_ *QQClient, _ uint16, payload []byte) (interface{}, error) {