Changeset 6029:c25f9d9f78a6 in roaraudio for libroar/vio_misc.c


Ignore:
Timestamp:
07/15/14 11:07:45 (10 years ago)
Author:
phi
Branch:
default
Phase:
public
Message:

some smaller improvements in error handling

File:
1 edited

Legend:

Unmodified
Added
Removed
  • libroar/vio_misc.c

    r5961 r6029  
    3939 struct roar_vio_misc * self = vio->inst; 
    4040 
    41  if ( self->read == NULL ) 
     41 if ( self->read == NULL ) { 
     42  roar_err_set(ROAR_ERROR_NOSYS); 
    4243  return -1; 
     44 } 
    4345 
    4446 return self->read(buf, count, vio, self); 
     
    4850 struct roar_vio_misc * self = vio->inst; 
    4951 
    50  if ( self->write == NULL ) 
     52 if ( self->write == NULL ) { 
     53  roar_err_set(ROAR_ERROR_RO); 
    5154  return -1; 
     55 } 
    5256 
    5357 return self->write(buf, count, vio, self); 
     
    7478 switch (cmd) { 
    7579  case ROAR_VIO_CTL_GET_NAME: 
    76     if ( data == NULL ) 
     80    if ( data == NULL ) { 
     81     roar_err_set(ROAR_ERROR_FAULT); 
    7782     return -1; 
     83    } 
    7884 
    7985    *(const char**)data = self->name; 
     
    9197     return 0; 
    9298 
     99    roar_err_set(ROAR_ERROR_NOSYS); 
    93100    return -1; 
    94101   break;  
    95102 } 
    96103 
     104 roar_err_set(ROAR_ERROR_BADRQC); 
    97105 return -1; 
    98106} 
     
    104112 
    105113int     roar_vio_open_misc    (struct roar_vio_calls * calls, const struct roar_vio_misc * callbacks) { 
    106  if ( calls == NULL || callbacks == NULL ) 
     114 if ( calls == NULL || callbacks == NULL ) { 
     115  roar_err_set(ROAR_ERROR_FAULT); 
    107116  return -1; 
     117 } 
    108118 
    109119 memset(calls, 0, sizeof(struct roar_vio_calls)); 
     
    173183 size_t i; 
    174184 
    175  if ( calls == NULL || name == NULL ) 
     185 if ( calls == NULL || name == NULL ) { 
     186  roar_err_set(ROAR_ERROR_FAULT); 
    176187  return -1; 
     188 } 
    177189 
    178190 for (i = 0; i < (sizeof(libroar_vio_miscs)/sizeof(*libroar_vio_miscs)); i++) 
     
    180192   return roar_vio_open_misc(calls, &(libroar_vio_miscs[i])); 
    181193 
     194 roar_err_set(ROAR_ERROR_NOENT); 
    182195 return -1; 
    183196} 
Note: See TracChangeset for help on using the changeset viewer.