summary refs log tree commit diff stats
path: root/audio
diff options
context:
space:
mode:
authormalc <av1474@comtv.ru>2010-01-08 11:26:27 +0300
committermalc <av1474@comtv.ru>2010-01-08 11:26:31 +0300
commite726fe7d60d46636c74c1c4a8fac7e4a05efb163 (patch)
tree6e204c6c1f5e004e39a7a5c77a31c9a750652af6 /audio
parent95372a393dee7a9d5446a9d38edd2b57f9f8d46c (diff)
downloadfocaccia-qemu-e726fe7d60d46636c74c1c4a8fac7e4a05efb163.tar.gz
focaccia-qemu-e726fe7d60d46636c74c1c4a8fac7e4a05efb163.zip
oss: workaround for cases when OSS_GETVERSION is not defined
Thanks to Juergen Lock.

Signed-off-by: malc <av1474@comtv.ru>
Diffstat (limited to 'audio')
-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",