Changeset 5253:a9d4cba9e8dc in roaraudio for libroar/vio.c


Ignore:
Timestamp:
11/13/11 17:01:45 (12 years ago)
Author:
phi
Branch:
default
Phase:
public
Message:

improved situation on opening files with DSTR/old roar_vio_open_file()

File:
1 edited

Legend:

Unmodified
Added
Removed
  • libroar/vio.c

    r5242 r5253  
    306306// converters: 
    307307int     roar_vio_open_file     (struct roar_vio_calls * calls, const char * filename, int flags, mode_t mode) { 
    308 #ifdef _CAN_OPERATE 
    309  int fh; 
     308 struct roar_vio_defaults def; 
    310309 
    311310 roar_debug_warn_obsolete("roar_vio_open_file", "roar_vio_open_dstr", NULL); 
    312311 
    313  if ( calls == NULL || filename == NULL ) { 
    314   roar_err_set(ROAR_ERROR_FAULT); 
    315   return -1; 
    316  } 
    317  
    318 #ifdef ROAR_TARGET_WIN32 
    319  flags |= O_BINARY; 
    320 #endif 
    321  
    322  roar_err_clear_all(); 
    323  if ( (fh = open(filename, flags, mode)) == -1 ) { 
    324   ROAR_DBG("roar_vio_open_file(*): errno=%s", strerror(errno)); 
    325   roar_err_update(); 
    326   ROAR_DBG("roar_vio_open_file(*): errno=%s", strerror(errno)); 
    327   return -1; 
    328  } 
    329  
    330  if ( roar_vio_open_fh(calls, fh) == -1 ) { 
    331   close(fh); 
    332   roar_err_update(); 
    333   return -1; 
    334  } 
    335  
    336  roar_err_update(); 
    337  return 0; 
    338 #else 
    339  return -1; 
    340 #endif 
     312 if ( roar_vio_dstr_init_defaults(&def, ROAR_VIO_DEF_TYPE_FILE, flags, mode) == -1 ) 
     313  return -1; 
     314 
     315 def.d.file = filename; 
     316 
     317 return roar_vio_open_default(calls, &def, NULL); 
    341318} 
    342319 
Note: See TracChangeset for help on using the changeset viewer.