D:2003/08/16 10:54:09
A:Jaroslav Kysela <perex@suse.cz>
F:core/oss/pcm_oss.c:1.45->1.46
L:Fixed open for O_RDWR when capture is not available
if ((f_mode & FMODE_READ) && !(csetup && csetup->disable)) {
if ((err = snd_pcm_open_substream(pcm, SNDRV_PCM_STREAM_CAPTURE,
&csubstream)) < 0) {
- snd_pcm_oss_release_file(pcm_oss_file);
- return err;
+ if (!(f_mode & FMODE_WRITE) || err != -ENODEV) {
+ snd_pcm_oss_release_file(pcm_oss_file);
+ return err;
+ } else {
+ csubstream = NULL;
+ }
}
pcm_oss_file->streams[SNDRV_PCM_STREAM_CAPTURE] = csubstream;
}