#52: Crash: #get_frame didn't change the buffer
-------------------------+--------------------------------------------------
  Reporter:  toots       |       Owner:  toots   
      Type:  Bugs        |      Status:  assigned
  Priority:  6           |   Milestone:          
 Component:  Liquidsoap  |     Version:  0.3.4   
Resolution:              |    Keywords:          
-------------------------+--------------------------------------------------
Comment (by mrpingouin):

 I confirm that this is a meaningful fix. Here's a simple test:
 {{{
 src/liquidsoap -t 'out(smart_cross(
   fun (va,vb,ma,mb,a,b) -> sequence([a,b]),
   request.queue(id="q")
 ))'
 }}}
 Then do a "q.push say:Hello world" via telnet. Currently, it crashes. With
 the patch that Romain proposes, it passes. The simpler way to write this
 patch, by the way, is:
 {{{
 @@ -117,7 +117,8 @@
        | `Limit ->
            (* The track finished.
             * We compute rms_after and launch the transition. *)
 -          self#analyze_after ;
 +          if source#is_ready then self#analyze_after ;
 }}}
 The good thing is that I can now re-enable the assertion that I had to
 comment out before. I tried to not launch a transition when there's
 nothing after, but didn't have time to find a working solution. I think it
 makes sense not to call the transition for just ending a track.

-- 
Ticket URL: <http://savonet.rastageeks.org/ticket/52#comment:13>
Savonet <http://savonet.rastageeks.org/>
Let's program our stream !

Répondre à