From 06881c80369e26efb077d77c76c07c2813ffb28e Mon Sep 17 00:00:00 2001 From: Nico de Poel Date: Wed, 21 Jul 2021 10:14:17 +0200 Subject: [PATCH] Fixed compiler warning related to implicit pointer type conversion --- engine/Quake/snd_fmod.c | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/engine/Quake/snd_fmod.c b/engine/Quake/snd_fmod.c index 5fb9ca1..b9775a5 100644 --- a/engine/Quake/snd_fmod.c +++ b/engine/Quake/snd_fmod.c @@ -211,7 +211,8 @@ whereby sounds can have varying degrees of distance rolloff. static float F_CALL SND_FMOD_Attenuation(FMOD_CHANNELCONTROL *channelcontrol, float distance) { FMOD_RESULT result; - soundslot_t *userdata; + void *userdata; + soundslot_t *soundslot; float scale; result = FMOD_Channel_GetUserData((FMOD_CHANNEL*)channelcontrol, &userdata); @@ -221,7 +222,8 @@ static float F_CALL SND_FMOD_Attenuation(FMOD_CHANNELCONTROL *channelcontrol, fl return 1.0f; } - scale = 1.0f - (distance * userdata->dist_mult); + soundslot = (soundslot_t *)userdata; + scale = 1.0f - (distance * soundslot->dist_mult); if (scale < 0.0f) scale = 0.0f; @@ -239,7 +241,8 @@ is properly cleared when the channel stops playing. static FMOD_RESULT F_CALL SND_FMOD_Callback(FMOD_CHANNELCONTROL *channelcontrol, FMOD_CHANNELCONTROL_TYPE controltype, FMOD_CHANNELCONTROL_CALLBACK_TYPE callbacktype, void *commanddata1, void *commanddata2) { FMOD_RESULT result; - soundslot_t *userdata; + void *userdata; + soundslot_t *soundslot; // We're only interested in notifications for when a channel is done playing a sound if (controltype != FMOD_CHANNELCONTROL_CHANNEL || callbacktype != FMOD_CHANNELCONTROL_CALLBACK_END) @@ -251,9 +254,10 @@ static FMOD_RESULT F_CALL SND_FMOD_Callback(FMOD_CHANNELCONTROL *channelcontrol, return FMOD_OK; } - if (userdata->zone) + soundslot = (soundslot_t *)userdata; + if (soundslot->zone) { - Z_Free(userdata); + Z_Free(soundslot); } return FMOD_OK;