Changeset 2252:8860b2075ca5 in roaraudio for roard/streams.c


Ignore:
Timestamp:
07/28/09 20:38:20 (15 years ago)
Author:
phi
Branch:
default
Phase:
public
Message:

moved THRU stream support from individual stream types to the general read() for streams, let's see if it works.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • roard/streams.c

    r2251 r2252  
    11341134int streams_check  (int id) { 
    11351135 int fh; 
    1136  int i; 
    11371136 ssize_t req, realreq, done; 
    11381137 struct roar_stream        *   s; 
     
    12161215 
    12171216  roar_buffer_get_data(b, (void **)&buf); 
    1218   for (i = 0; i < ROAR_STREAMS_MAX; i++) { 
    1219    if ( g_streams[i] != NULL && ROAR_STREAM(g_streams[i])->pos_rel_id == id ) { 
    1220     if ( ROAR_STREAM(g_streams[i])->dir == ROAR_DIR_THRU ) { 
    1221      if ( stream_vio_write(i, buf, req) != req ) { 
    1222       streams_delete(i); 
    1223      } 
    1224     } 
    1225    } 
    1226   } 
    12271217 } else { 
    12281218  req = codecfilter_read(ss->codecfilter_inst, ss->codecfilter, buf, req); 
     
    14941484  size_t len =  0; 
    14951485 ssize_t r   = -1; 
     1486 int     i; 
    14961487 
    14971488 errno = 0; 
     
    15161507  return -1; 
    15171508 
     1509 for (i = 0; i < ROAR_STREAMS_MAX; i++) { 
     1510  if ( g_streams[i] != NULL && ROAR_STREAM(g_streams[i])->pos_rel_id == ROAR_STREAM(stream)->id ) { 
     1511   if ( ROAR_STREAM(g_streams[i])->dir == ROAR_DIR_THRU ) { 
     1512    if ( stream_vio_write(i, buf, len) != len ) { 
     1513     streams_delete(i); 
     1514    } 
     1515   } 
     1516  } 
     1517 } 
     1518 
    15181519 return len; 
    15191520} 
Note: See TracChangeset for help on using the changeset viewer.