From f765389e96e31b8a036e3ac26d2e580266d32666 Mon Sep 17 00:00:00 2001 From: Mrs4s Date: Sat, 9 Jan 2021 04:08:06 +0800 Subject: [PATCH] fix private image & lock. --- client/highway.go | 1 + client/image.go | 2 ++ 2 files changed, 3 insertions(+) diff --git a/client/highway.go b/client/highway.go index 1eae4f44..949fc5fc 100644 --- a/client/highway.go +++ b/client/highway.go @@ -204,6 +204,7 @@ func (c *QQClient) highwayUploadFileMultiThreadingByBDH(path string, cmdId int32 if err != nil { return nil, errors.Wrap(err, "open file error") } + defer file.Close() if stat.Size() < 1024*1024*3 { return c.highwayUploadByBDH(file, cmdId, ticket, ext, encrypt) } diff --git a/client/image.go b/client/image.go index 563dda3b..28c16a5b 100644 --- a/client/image.go +++ b/client/image.go @@ -64,6 +64,7 @@ func (c *QQClient) UploadGroupImageByFile(groupCode int64, path string) (*messag if err != nil { return nil, err } + defer img.Close() fh, length := utils.ComputeMd5AndLength(img) seq, pkt := c.buildGroupImageStorePacket(groupCode, fh[:], int32(length)) r, err := c.sendAndWait(seq, pkt) @@ -104,6 +105,7 @@ func (c *QQClient) UploadPrivateImage(target int64, img io.ReadSeeker) (*message } func (c *QQClient) uploadPrivateImage(target int64, img io.ReadSeeker, count int) (*message.FriendImageElement, error) { + _, _ = img.Seek(0, io.SeekStart) count++ fh, length := utils.ComputeMd5AndLength(img) _, _ = img.Seek(0, io.SeekStart)