Changeset 5171:7c5491b0c607 in roaraudio


Ignore:
Timestamp:
10/22/11 00:39:19 (12 years ago)
Author:
phi
Branch:
default
Phase:
public
Message:

improved error handling

File:
1 edited

Legend:

Unmodified
Added
Removed
  • libroardsp/filter.c

    r4708 r5171  
    7777 } 
    7878 
     79 roar_err_set(ROAR_ERROR_NOENT); 
    7980 return -1; 
    8081} 
     
    8990 } 
    9091 
     92 roar_err_set(ROAR_ERROR_NOENT); 
    9193 return NULL; 
    9294} 
     
    9597 struct roardsp_filter * n; 
    9698 int ret; 
    97  
    98  if ( filter == NULL || stream == NULL ) 
    99   return -1; 
     99 int error; 
     100 
     101 if ( filter == NULL || stream == NULL ) { 
     102  roar_err_set(ROAR_ERROR_FAULT); 
     103  return -1; 
     104 } 
    100105 
    101106 *filter = NULL; // just to be sure 
     
    107112 
    108113 if ( (ret = roardsp_filter_init(n, stream, id)) == -1 ) { 
     114  error = roar_error; 
    109115  roar_mm_free(n); 
     116  roar_err_set(error); 
    110117  return -1; 
    111118 } 
     
    125132 if ( filter == NULL || stream == NULL ) { 
    126133  ROAR_DBG("roardsp_filter_init(*) = -1 // filter or stream is NULL"); 
     134  roar_err_set(ROAR_ERROR_FAULT); 
     135  return -1; 
     136 } 
     137 
     138 if ( id < 0 ) { 
     139  roar_err_set(ROAR_ERROR_INVAL); 
    127140  return -1; 
    128141 } 
     
    139152 
    140153 while ( l->id != id ) { 
    141   if ( l->id == -1 ) 
     154  if ( l->id == -1 ) { 
     155   roar_err_set(ROAR_ERROR_NOENT); 
    142156   return -1; 
     157  } 
    143158  l++; 
    144159 } 
     
    156171 if ( calc == NULL ) { 
    157172  ROAR_DBG("roardsp_filter_init(*) = -1 // no calc code"); 
     173  roar_err_set(ROAR_ERROR_NOTSUP); 
    158174  return -1; 
    159175 } 
     
    173189 int ret = 0; 
    174190 
    175  if ( filter == NULL ) 
    176   return -1; 
     191 if ( filter == NULL ) { 
     192  roar_err_set(ROAR_ERROR_FAULT); 
     193  return -1; 
     194 } 
    177195 
    178196 if ( filter->uninit != NULL ) 
     
    191209 int ret = 0; 
    192210 
    193  if ( filter == NULL ) 
    194   return -1; 
    195  
    196  if ( data == NULL && len != 0 ) 
    197   return -1; 
     211 if ( filter == NULL ) { 
     212  roar_err_set(ROAR_ERROR_FAULT); 
     213  return -1; 
     214 } 
     215 
     216 if ( data == NULL && len != 0 ) { 
     217  roar_err_set(ROAR_ERROR_FAULT); 
     218  return -1; 
     219 } 
    198220 
    199221 if ( filter->calc != NULL ) 
     
    204226 
    205227int    roardsp_filter_ctl   (struct roardsp_filter * filter, int cmd, void * data) { 
    206  if ( filter == NULL ) 
    207   return -1; 
     228 if ( filter == NULL ) { 
     229  roar_err_set(ROAR_ERROR_FAULT); 
     230  return -1; 
     231 } 
    208232 
    209233 if ( filter->ctl != NULL ) 
    210234  return filter->ctl(filter, cmd, data); 
    211235 
     236 roar_err_set(ROAR_ERROR_NOSYS); 
    212237 return -1; 
    213238} 
    214239 
    215240int    roardsp_filter_reset (struct roardsp_filter * filter, int what) { 
    216  if ( filter == NULL ) 
    217   return -1; 
     241 if ( filter == NULL ) { 
     242  roar_err_set(ROAR_ERROR_FAULT); 
     243  return -1; 
     244 } 
    218245 
    219246 if ( filter->reset != NULL ) 
    220247  return filter->reset(filter, what); 
    221248 
     249 roar_err_set(ROAR_ERROR_NOSYS); 
    222250 return -1; 
    223251} 
Note: See TracChangeset for help on using the changeset viewer.