mirror of https://github.com/schollz/croc.git
chore(comm): cleanup comm Write func
+ better handling error. + use Send instead of Write since we do not need number of bytes sent.
This commit is contained in:
parent
f5624007c8
commit
9f54f2d08f
|
@ -77,23 +77,23 @@ func (c *Comm) Close() {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
func (c *Comm) Write(b []byte) (int, error) {
|
func (c *Comm) Write(b []byte) (n int, err error) {
|
||||||
header := new(bytes.Buffer)
|
header := new(bytes.Buffer)
|
||||||
err := binary.Write(header, binary.LittleEndian, uint32(len(b)))
|
err = binary.Write(header, binary.LittleEndian, uint32(len(b)))
|
||||||
if err != nil {
|
if err != nil {
|
||||||
fmt.Println("binary.Write failed:", err)
|
fmt.Println("binary.Write failed:", err)
|
||||||
}
|
}
|
||||||
tmpCopy := append(header.Bytes(), b...)
|
tmpCopy := append(header.Bytes(), b...)
|
||||||
n, err := c.connection.Write(tmpCopy)
|
n, err = c.connection.Write(tmpCopy)
|
||||||
if n != len(tmpCopy) {
|
if err != nil {
|
||||||
if err != nil {
|
err = fmt.Errorf("connection.Write failed: %w", err)
|
||||||
err = fmt.Errorf("wanted to write %d but wrote %d: %w", len(b), n, err)
|
return
|
||||||
} else {
|
|
||||||
err = fmt.Errorf("wanted to write %d but wrote %d", len(b), n)
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
// log.Printf("wanted to write %d but wrote %d", n, len(b))
|
if n != len(tmpCopy) {
|
||||||
return n, err
|
err = fmt.Errorf("wanted to write %d but wrote %d", len(b), n)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
func (c *Comm) Read() (buf []byte, numBytes int, bs []byte, err error) {
|
func (c *Comm) Read() (buf []byte, numBytes int, bs []byte, err error) {
|
||||||
|
|
|
@ -28,7 +28,7 @@ func Send(c *comm.Comm, key []byte, m Message) (err error) {
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
_, err = c.Write(mSend)
|
err = c.Send(mSend)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue