mirror of
https://github.com/hajimehoshi/ebiten.git
synced 2024-12-24 02:38:53 +01:00
parent
d655d5f66c
commit
82050d6ac1
@ -389,9 +389,6 @@ func (p *playerImpl) loop() {
|
||||
}
|
||||
|
||||
func (p *playerImpl) read() ([]byte, bool) {
|
||||
p.m.Lock()
|
||||
defer p.m.Unlock()
|
||||
|
||||
if p.context.hasError() {
|
||||
return nil, false
|
||||
}
|
||||
@ -400,18 +397,20 @@ func (p *playerImpl) read() ([]byte, bool) {
|
||||
return nil, false
|
||||
}
|
||||
|
||||
p.context.semaphore <- struct{}{}
|
||||
defer func() {
|
||||
<-p.context.semaphore
|
||||
}()
|
||||
|
||||
p.m.Lock()
|
||||
defer p.m.Unlock()
|
||||
|
||||
// playing can be false when pausing.
|
||||
if !p.playing {
|
||||
return nil, false
|
||||
}
|
||||
|
||||
const bufSize = 2048
|
||||
|
||||
p.context.semaphore <- struct{}{}
|
||||
defer func() {
|
||||
<-p.context.semaphore
|
||||
}()
|
||||
|
||||
newBuf := make([]byte, bufSize-len(p.buf))
|
||||
n, err := p.src.Read(newBuf)
|
||||
if err != nil {
|
||||
|
Loading…
Reference in New Issue
Block a user