aboutsummaryrefslogtreecommitdiff
path: root/audio/ossaudio.c
diff options
context:
space:
mode:
Diffstat (limited to 'audio/ossaudio.c')
-rw-r--r--audio/ossaudio.c13
1 files changed, 12 insertions, 1 deletions
diff --git a/audio/ossaudio.c b/audio/ossaudio.c
index 4002f14670..4766aa7258 100644
--- a/audio/ossaudio.c
+++ b/audio/ossaudio.c
@@ -240,7 +240,9 @@ static int oss_open (int in, struct oss_params *req,
struct oss_params *obt, int *pfd)
{
int fd;
+#ifdef OSS_GETVERSION
int version;
+#endif
int oflags = conf.exclusive ? O_EXCL : 0;
audio_buf_info abinfo;
int fmt, freq, nchannels;
@@ -281,6 +283,7 @@ static int oss_open (int in, struct oss_params *req,
goto err;
}
+#ifdef OSS_GETVERSION
if (ioctl (fd, OSS_GETVERSION, &version)) {
oss_logerr2 (errno, typ, "Failed to get OSS version\n");
version = 0;
@@ -289,9 +292,17 @@ static int oss_open (int in, struct oss_params *req,
if (conf.debug) {
dolog ("OSS version = %#x\n", version);
}
+#endif
#ifdef SNDCTL_DSP_POLICY
- if (conf.policy >= 0 && version >= 0x040000) {
+ if (conf.policy >= 0
+#ifdef OSS_GETVERSION
+ && version >= 0x040000
+#else
+ 0
+#endif
+ )
+ {
int policy = conf.policy;
if (ioctl (fd, SNDCTL_DSP_POLICY, &policy)) {
oss_logerr2 (errno, typ, "Failed to set timing policy to %d\n",