Andrew Eikum aeikum@codeweavers.com writes:
+static inline HWAVE WINMM_MakeHWAVE(UINT mmdevice, BOOL is_out, UINT device) +{
- return (HWAVE)((1 << 15) | ((!!is_out) << 14) | (mmdevice << 8) | device);
+}
+static inline void WINMM_DecomposeHWAVE(HWAVE hwave, UINT *mmdevice_index,
BOOL *is_out, UINT *device_index, UINT *junk)
+{
- *device_index = ((UINT)hwave & 0xFF);
- *mmdevice_index = ((UINT)hwave >> 8) & 0x3F;
- *is_out = ((UINT)hwave >> 14) & 0x1;
- *junk = (UINT)hwave >> 15;
+}
This (and the same thing in various other places) will cause pointer conversion warnings on 64-bit.