Changeset 571:0dfe525abe11 in roaraudio


Ignore:
Timestamp:
08/19/08 02:25:49 (16 years ago)
Author:
phi
Branch:
default
Phase:
public
Message:

fixed bugs then codec filter can not be opened: delete stream

Location:
roard
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • roard/codecfilter.c

    r561 r571  
    8080 
    8181 if (*codecfilter_id != -1) { 
    82   if ( filter->open ) 
    83    return filter->open(inst, codec, info, filter); 
     82  if ( filter->open ) { 
     83   if ( (i = filter->open(inst, codec, info, filter)) == -1 ) { 
     84    info->codecfilter = *codecfilter_id = -1; 
     85   } 
     86   return i; 
     87  } 
    8488  return 0; 
    8589 } 
    8690 
    87  return -1; 
     91 return 0; // we found no filter -> ok 
    8892} 
    8993 
  • roard/streams.c

    r547 r571  
    136136 ((struct roar_stream *)g_streams[id])->fh = fh; 
    137137 
    138  codecfilter_open(&(g_streams[id]->codecfilter_inst), &(g_streams[id]->codecfilter), NULL, 
    139                   ROAR_STREAM(g_streams[id])->info.codec, g_streams[id]); 
     138 if ( codecfilter_open(&(g_streams[id]->codecfilter_inst), &(g_streams[id]->codecfilter), NULL, 
     139                  ROAR_STREAM(g_streams[id])->info.codec, g_streams[id]) == -1 ) { 
     140  return streams_delete(id); 
     141 } 
    140142 
    141143 dir = ROAR_STREAM(g_streams[id])->dir; 
Note: See TracChangeset for help on using the changeset viewer.