aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Alc/backends/oss.c12
1 files changed, 10 insertions, 2 deletions
diff --git a/Alc/backends/oss.c b/Alc/backends/oss.c
index 33ea55eb..f99ca0d2 100644
--- a/Alc/backends/oss.c
+++ b/Alc/backends/oss.c
@@ -821,7 +821,11 @@ void ALCossBackendFactory_probe(ALCossBackendFactory* UNUSED(self), enum DevProb
cur = &oss_playback;
while(cur != NULL)
{
- AppendAllDevicesList(cur->handle);
+#ifdef HAVE_STAT
+ struct stat buf;
+ if(stat(cur->path, &buf) == 0)
+#endif
+ AppendAllDevicesList(cur->handle);
cur = cur->next;
}
break;
@@ -832,7 +836,11 @@ void ALCossBackendFactory_probe(ALCossBackendFactory* UNUSED(self), enum DevProb
cur = &oss_capture;
while(cur != NULL)
{
- AppendCaptureDeviceList(cur->handle);
+#ifdef HAVE_STAT
+ struct stat buf;
+ if(stat(cur->path, &buf) == 0)
+#endif
+ AppendCaptureDeviceList(cur->handle);
cur = cur->next;
}
break;