mirror of
https://github.com/mamoe/mirai.git
synced 2025-03-03 15:10:14 +08:00
Fix potential memory leak on login
This commit is contained in:
parent
68729cdcba
commit
31a5957509
@ -373,7 +373,7 @@ internal class WtLogin {
|
||||
}
|
||||
|
||||
private fun onUnsafeDeviceLogin(tlvMap: TlvMap): LoginPacketResponse.UnsafeLogin {
|
||||
return LoginPacketResponse.UnsafeLogin(tlvMap.getOrFail(0x204).toReadPacket().readBytes().encodeToString())
|
||||
return LoginPacketResponse.UnsafeLogin(tlvMap.getOrFail(0x204).encodeToString())
|
||||
}
|
||||
|
||||
private fun onErrorMessage(tlvMap: TlvMap): LoginPacketResponse.Error? {
|
||||
@ -416,15 +416,17 @@ internal class WtLogin {
|
||||
// if (question[18].toInt() == 0x36) {
|
||||
// 图片验证
|
||||
// DebugLogger.debug("是一个图片验证码")
|
||||
val imageData = tlvMap.getOrFail(0x105).toReadPacket()
|
||||
val signInfoLength = imageData.readShort()
|
||||
imageData.discardExact(2)//image Length
|
||||
val sign = imageData.readBytes(signInfoLength.toInt())
|
||||
return tlvMap.getOrFail(0x105).toReadPacket().withUse {
|
||||
val imageData = this
|
||||
val signInfoLength = imageData.readShort()
|
||||
imageData.discardExact(2)//image Length
|
||||
val sign = imageData.readBytes(signInfoLength.toInt())
|
||||
|
||||
return LoginPacketResponse.Captcha.Picture(
|
||||
data = imageData.readBytes(),
|
||||
sign = sign
|
||||
)
|
||||
LoginPacketResponse.Captcha.Picture(
|
||||
data = imageData.readBytes(),
|
||||
sign = sign
|
||||
)
|
||||
}
|
||||
// } else error("UNKNOWN CAPTCHA QUESTION: ${question.toUHexString()}, tlvMap=" + tlvMap.contentToString())
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user