OSDN Git Service

oss: workaround for cases when OSS_GETVERSION is not defined
authormalc <av1474@comtv.ru>
Fri, 8 Jan 2010 08:26:27 +0000 (11:26 +0300)
committermalc <av1474@comtv.ru>
Fri, 8 Jan 2010 08:26:31 +0000 (11:26 +0300)
Thanks to Juergen Lock.

Signed-off-by: malc <av1474@comtv.ru>
audio/ossaudio.c

index 4002f14..4766aa7 100644 (file)
@@ -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",