mirror of
https://github.com/MetaCubeX/mihomo.git
synced 2025-12-20 17:10:08 +08:00
fix: vision conn read short buffer error
This commit is contained in:
parent
9e0889c02c
commit
a75e570cca
@ -5,6 +5,7 @@ import (
|
|||||||
"crypto/subtle"
|
"crypto/subtle"
|
||||||
gotls "crypto/tls"
|
gotls "crypto/tls"
|
||||||
"encoding/binary"
|
"encoding/binary"
|
||||||
|
"errors"
|
||||||
"fmt"
|
"fmt"
|
||||||
"io"
|
"io"
|
||||||
"net"
|
"net"
|
||||||
@ -117,9 +118,11 @@ func (vc *Conn) ReadBuffer(buffer *buf.Buffer) error {
|
|||||||
case commandPaddingDirect:
|
case commandPaddingDirect:
|
||||||
needReturn := false
|
needReturn := false
|
||||||
if vc.input != nil {
|
if vc.input != nil {
|
||||||
_, err := buffer.ReadFrom(vc.input)
|
_, err := buffer.ReadOnceFrom(vc.input)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
if !errors.Is(err, io.EOF) {
|
||||||
|
return err
|
||||||
|
}
|
||||||
}
|
}
|
||||||
if vc.input.Len() == 0 {
|
if vc.input.Len() == 0 {
|
||||||
needReturn = true
|
needReturn = true
|
||||||
@ -129,9 +132,11 @@ func (vc *Conn) ReadBuffer(buffer *buf.Buffer) error {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
if vc.rawInput != nil {
|
if vc.rawInput != nil {
|
||||||
_, err := buffer.ReadFrom(vc.rawInput)
|
_, err := buffer.ReadOnceFrom(vc.rawInput)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
if !errors.Is(err, io.EOF) {
|
||||||
|
return err
|
||||||
|
}
|
||||||
}
|
}
|
||||||
needReturn = true
|
needReturn = true
|
||||||
if vc.rawInput.Len() == 0 {
|
if vc.rawInput.Len() == 0 {
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user