extensions/sdktools/voice.cpp
changeset 3031 e45ed10cb5ba
parent 2797 1b63e6a22664
child 3210 61d9463f0765
     1.1 --- a/extensions/sdktools/voice.cpp	Fri Jun 04 17:14:52 2010 -0500
     1.2 +++ b/extensions/sdktools/voice.cpp	Sat Jun 05 23:15:29 2010 -0700
     1.3 @@ -69,6 +69,7 @@
     1.4  bool DecHookCount(int amount)
     1.5  {
     1.6  	g_VoiceHookCount -= amount;
     1.7 +	assert(g_VoiceHookCount);
     1.8  	if (g_VoiceHookCount == 0)
     1.9  	{
    1.10  		SH_REMOVE_HOOK_MEMFUNC(IVoiceServer, SetClientListening, voiceserver, &g_SdkTools, &SDKTools::OnSetClientListening, false);
    1.11 @@ -199,13 +200,13 @@
    1.12  			g_VoiceMap[i][client] = Listen_Default;
    1.13  			if (DecHookCount())
    1.14  			{
    1.15 -				return;
    1.16 +				break;
    1.17  			}
    1.18  		}
    1.19  	}
    1.20  
    1.21 -	/* Reset this client's mutes, just in case */
    1.22 -	memset(&g_ClientMutes[client], 0, sizeof(int) * 65);
    1.23 +	/* Reset this client's mutes */
    1.24 +	memset(&g_ClientMutes[client], 0, sizeof(bool) * 65);
    1.25  
    1.26  	/* Reset other clients who send to this client */
    1.27  	if (g_ClientOverrides[client] > 0)
    1.28 @@ -213,7 +214,6 @@
    1.29  		DecHookCount(g_ClientOverrides[client]);
    1.30  		g_ClientOverrides[client] = 0;
    1.31  		memset(&g_VoiceMap[client], false, sizeof(ListenOverride) * 65);
    1.32 -		memset(&g_ClientMutes[client], false, sizeof(bool) * 65);
    1.33  	}
    1.34  
    1.35  	if (g_VoiceFlags[client])