Browse Source

fix: stream is nil course panic

pull/6/head
halwu(吴浩麟) 8 years ago
parent
commit
f6a8749f3f
  1. 17
      protocol/rtmp/stream.go

17
protocol/rtmp/stream.go

@ -27,12 +27,10 @@ func NewRtmpStream() *RtmpStream { @@ -27,12 +27,10 @@ func NewRtmpStream() *RtmpStream {
func (rs *RtmpStream) HandleReader(r av.ReadCloser) {
info := r.Info()
var s *Stream
ok := rs.streams.Has(info.Key)
if !ok {
s = NewStream()
rs.streams.Set(info.Key, s)
} else {
var stream *Stream
i, ok := rs.streams.Get(info.Key)
if ok {
if s, ok := i.(*Stream); ok {
s.TransStop()
id := s.ID()
if id != EmptyID && id != info.UID {
@ -42,7 +40,12 @@ func (rs *RtmpStream) HandleReader(r av.ReadCloser) { @@ -42,7 +40,12 @@ func (rs *RtmpStream) HandleReader(r av.ReadCloser) {
rs.streams.Set(info.Key, ns)
}
}
s.AddReader(r)
} else {
stream = NewStream()
rs.streams.Set(info.Key, stream)
}
stream.AddReader(r)
}
func (rs *RtmpStream) HandleWriter(w av.WriteCloser) {

Loading…
Cancel
Save