some other playsound fixes

Alexandre Julliard julliard at winehq.com
Tue May 28 16:18:47 CDT 2002


Eric Pouech <eric.pouech at wanadoo.fr> writes:

>  typedef struct tagWINE_PLAYSOUND {
> -    HANDLE              hThread;
> -    HANDLE		hReadyEvent;
> -    BOOL 		bStop;
> -    LPCWSTR		pszSound;
> -    HMODULE		hMod;
> -    DWORD		fdwSound;
> -    BOOL	        bLoop;
> -    BOOL                bAlloc;
> +    volatile BOOL	        bLoop : 1,
> +                                bAlloc : 1;
> +    LPCWSTR		        pszSound;
> +    HMODULE		        hMod;
> +    DWORD		        fdwSound;
> +    struct tagWINE_PLAYSOUND*   lpNext;
>  } WINE_PLAYSOUND, *LPWINE_PLAYSOUND;

If you need to make variables volatile, something is wrong with the
synchronization, and volatile is the wrong fix (especially on a bit
field where updates can't be atomic). What is this supposed to fix?

-- 
Alexandre Julliard
julliard at winehq.com



More information about the wine-devel mailing list