[MPlayer-cvslog] r27482 - trunk/libao2/ao_oss.c

ranma subversion at mplayerhq.hu
Sun Aug 24 15:52:55 CEST 2008

Author: ranma
Date: Sun Aug 24 15:52:54 2008
New Revision: 27482

Fix 'cast from pointer to integer of different size' on 64bit architectures.  Casting to long should work for 32bit and 64bit and not make a difference to the boolean operation (since 'format' is always 32bit (int) the upper 32bit of 'arg' won't matter, but the compiler should be happy now. Casting both to unsigned makes sure the compiler isn't messing things up by sign-extending 'format' to 64bit before masking)


Modified: trunk/libao2/ao_oss.c
--- trunk/libao2/ao_oss.c	(original)
+++ trunk/libao2/ao_oss.c	Sun Aug 24 15:52:54 2008
@@ -166,7 +166,7 @@ static int control(int cmd,void *arg){
 	    int format;
 	    if (!ioctl(audio_fd, SNDCTL_DSP_GETFMTS, &format))
-		if (format & (int)arg)
+		if ((unsigned int)format & (unsigned long)arg)
 	    	    return CONTROL_TRUE;
 	    return CONTROL_FALSE;

More information about the MPlayer-cvslog mailing list