Remove buffered reader from data channel.
parent
7bde2357f3
commit
6f5b605ea7
|
@ -1,7 +1,6 @@
|
||||||
package internal
|
package internal
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"bufio"
|
|
||||||
"bytes"
|
"bytes"
|
||||||
"encoding/json"
|
"encoding/json"
|
||||||
"errors"
|
"errors"
|
||||||
|
@ -14,11 +13,10 @@ import (
|
||||||
type DataChannel struct {
|
type DataChannel struct {
|
||||||
dataChannel *webrtc.DataChannel
|
dataChannel *webrtc.DataChannel
|
||||||
|
|
||||||
rawDataLock sync.RWMutex
|
rawDataLock sync.RWMutex
|
||||||
rawDataWriter *io.PipeWriter
|
rawDataWriter *io.PipeWriter
|
||||||
rawDataReaderBuffered *bufio.Reader
|
rawDataReader *io.PipeReader
|
||||||
rawDataReader *io.PipeReader
|
rawDataRest uint64
|
||||||
rawDataRest uint64
|
|
||||||
|
|
||||||
bufferWaitChannel chan interface{}
|
bufferWaitChannel chan interface{}
|
||||||
closeWaitChannel chan interface{}
|
closeWaitChannel chan interface{}
|
||||||
|
@ -177,7 +175,6 @@ func (conn *DataChannel) ExpectRawData(expectedLength uint64) {
|
||||||
defer conn.rawDataLock.Unlock()
|
defer conn.rawDataLock.Unlock()
|
||||||
|
|
||||||
conn.rawDataReader, conn.rawDataWriter = io.Pipe()
|
conn.rawDataReader, conn.rawDataWriter = io.Pipe()
|
||||||
conn.rawDataReaderBuffered = bufio.NewReaderSize(conn.rawDataReader, 16*1024*1024)
|
|
||||||
conn.rawDataRest = expectedLength
|
conn.rawDataRest = expectedLength
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -199,12 +196,12 @@ func (conn *DataChannel) SendMessage(msg *Message) (err error) {
|
||||||
}
|
}
|
||||||
|
|
||||||
func (conn *DataChannel) Read(p []byte) (n int, err error) {
|
func (conn *DataChannel) Read(p []byte) (n int, err error) {
|
||||||
if conn.rawDataReaderBuffered == nil {
|
if conn.rawDataReader == nil {
|
||||||
err = errors.New("Unexpected raw data read")
|
err = errors.New("Unexpected raw data read")
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
n, err = conn.rawDataReaderBuffered.Read(p)
|
n, err = conn.rawDataReader.Read(p)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue