int SDL_OpenAudioPath(char *path, int maxlen, int flags, int classic) { struct stat sb; int audio_fd; char audiopath[1024]; int cycle; audio_fd = OpenUserDefinedDevice(path,maxlen,flags); if ( audio_fd != -1 ) { return audio_fd; } cycle = 0; while( devsettings[cycle][0] != '\0' ) { sprintf( audiopath, _PATH_DEV_DSP, devsettings[cycle][0], devsettings[cycle][1], devsettings[cycle][2]); if ( stat(audiopath, &sb) == 0 ) { audio_fd = open(audiopath, flags, 0); if ( audio_fd > 0 ) { if ( path != NULL ) { strncpy( path, audiopath, maxlen ); path[maxlen-1] = '\0'; } return audio_fd; } } } return -1; }
static int OpenAudioPath(char *path, int maxlen, int flags, int classic) { struct stat sb; int cycle = 0; int fd = OpenUserDefinedDevice(path, maxlen, flags); if (fd != -1) { return fd; } /* !!! FIXME: do we really need a table here? */ while (devsettings[cycle][0] != '\0') { char audiopath[1024]; SDL_snprintf(audiopath, SDL_arraysize(audiopath), _PATH_DEV_DSP, devsettings[cycle][0], devsettings[cycle][1], devsettings[cycle][2]); if (stat(audiopath, &sb) == 0) { fd = open(audiopath, flags, 0); if (fd > 0) { if (path != NULL) { SDL_strlcpy(path, audiopath, maxlen); } return fd; } } } return -1; }