From 0dbb5e2a77fea035cdf86fc3afaef84a7e9204e1 Mon Sep 17 00:00:00 2001
From: aymeric <aymeric@3f6dc0c8-ddfe-455d-9043-3cd528dc4637>
Date: Fri, 24 Apr 2009 13:29:14 +0000
Subject: [PATCH] Fix for C compilation

git-svn-id: svn+ssh://svn.savannah.nongnu.org/linphone/trunk@437 3f6dc0c8-ddfe-455d-9043-3cd528dc4637
---
 linphone/mediastreamer2/src/winsnd2.c | 81 +++++++++++++++------------
 1 file changed, 44 insertions(+), 37 deletions(-)

diff --git a/linphone/mediastreamer2/src/winsnd2.c b/linphone/mediastreamer2/src/winsnd2.c
index a088ef1a28..b8ce841890 100755
--- a/linphone/mediastreamer2/src/winsnd2.c
+++ b/linphone/mediastreamer2/src/winsnd2.c
@@ -16,7 +16,7 @@ You should have received a copy of the GNU General Public License
 along with this program; if not, write to the Free Software
 Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
 */
-#if !defined(_WIN32_WCE) //Allready defined for wince
+#if !defined(_WIN32_WCE) /* Allready defined for wince */
 #define UNICODE
 #endif
 
@@ -31,8 +31,8 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
 #include <msacm.h>
 
 #if defined(_WIN32_WCE)
-//#define DISABLE_SPEEX
-//#define WCE_OPTICON_WORKAROUND 1000
+/*#define DISABLE_SPEEX */
+/*#define WCE_OPTICON_WORKAROUND 1000 */
 #endif
 #ifndef DISABLE_SPEEX
 #include <speex/speex_preprocess.h>
@@ -57,12 +57,13 @@ static void winsndcard_set_level(MSSndCard *card, MSSndCardMixerElem e, int perc
 	UINT uMixerID;
 	DWORD dwMixerHandle;
 	MIXERLINE MixerLine;
+	MIXERLINE Line;
+	UINT uLineIndex;
 
     MMRESULT mr = MMSYSERR_NOERROR;
     DWORD dwVolume = 0xFFFF;
     dwVolume = ((0xFFFF) * percent) / 100;
 
-
 	switch(e){
 		case MS_SND_CARD_MASTER:
 			mr = waveOutSetVolume((HWAVEOUT)d->out_devid, dwVolume);
@@ -100,8 +101,7 @@ static void winsndcard_set_level(MSSndCard *card, MSSndCardMixerElem e, int perc
 			ms_message("Source Line: %d\n", MixerLine.dwSource);
 			ms_message("ComponentType: %d\n", MixerLine.dwComponentType);
 
-			MIXERLINE Line;
-			for ( UINT uLineIndex = 0; uLineIndex < MixerLine.cConnections; uLineIndex++)
+			for (uLineIndex = 0; uLineIndex < MixerLine.cConnections; uLineIndex++)
 			{
 				memset( &Line, 0, sizeof(MIXERLINE) );
 				Line.cbStruct = sizeof(MIXERLINE);
@@ -142,26 +142,31 @@ static void winsndcard_set_level(MSSndCard *card, MSSndCardMixerElem e, int perc
 				if (MIXERLINE_COMPONENTTYPE_SRC_MICROPHONE == Line.dwComponentType)  
 				{
 					/* unmute */
-					// Find a mute control, if any, of the microphone line  
+					/* Find a mute control, if any, of the microphone line  */
 
-					LPMIXERCONTROL pmxctrl = (LPMIXERCONTROL)malloc(sizeof MIXERCONTROL);  
+					LPMIXERCONTROL pmxctrl = (LPMIXERCONTROL)malloc(sizeof(MIXERCONTROL));  
 					MIXERLINECONTROLS mxlctrl = {sizeof mxlctrl, Line.dwLineID, MIXERCONTROL_CONTROLTYPE_MUTE, 1, sizeof(MIXERCONTROL), pmxctrl};  
 					if(!mixerGetLineControls((HMIXEROBJ)dwMixerHandle, &mxlctrl, MIXER_GETLINECONTROLSF_ONEBYTYPE)){  
-						// Found, so proceed  
-						DWORD cChannels = Line.cChannels;  
+						DWORD cChannels = Line.cChannels;
+						LPMIXERCONTROLDETAILS_BOOLEAN pbool;
+						MIXERCONTROLDETAILS mxcd;
+
 						if (MIXERCONTROL_CONTROLF_UNIFORM & pmxctrl->fdwControl)  
 							cChannels = 1;  
-						LPMIXERCONTROLDETAILS_BOOLEAN pbool =  
-							(LPMIXERCONTROLDETAILS_BOOLEAN) malloc(cChannels * sizeof  
-							MIXERCONTROLDETAILS_BOOLEAN);  
-						MIXERCONTROLDETAILS mxcd = {sizeof(mxcd), pmxctrl->dwControlID,  
-							cChannels, (HWND)0,  
-							sizeof MIXERCONTROLDETAILS_BOOLEAN, (LPVOID) pbool};  
+						pbool = (LPMIXERCONTROLDETAILS_BOOLEAN) malloc(cChannels * sizeof(
+							MIXERCONTROLDETAILS_BOOLEAN));
+
+						mxcd.cbStruct = sizeof(mxcd);
+						mxcd.dwControlID = pmxctrl->dwControlID;
+						mxcd.cChannels = cChannels;
+						mxcd.hwndOwner = (HWND)0;
+						mxcd.cbDetails = sizeof(MIXERCONTROLDETAILS_BOOLEAN);
+						mxcd.paDetails = (LPVOID) pbool;
 
 						mixerGetControlDetails((HMIXEROBJ)dwMixerHandle, &mxcd,  
 							MIXER_SETCONTROLDETAILSF_VALUE);  
-						// Unmute the microphone line (for both channels)  
-						pbool[0].fValue = pbool[cChannels - 1].fValue = 0; //0 -> unmute;  
+						/* Unmute the microphone line (for both channels) */
+						pbool[0].fValue = pbool[cChannels - 1].fValue = 0; /* 0 -> unmute; */
 						mixerSetControlDetails((HMIXEROBJ)dwMixerHandle, &mxcd,  
 							MIXER_SETCONTROLDETAILSF_VALUE);  
 						free(pmxctrl);  
@@ -177,22 +182,26 @@ static void winsndcard_set_level(MSSndCard *card, MSSndCardMixerElem e, int perc
 					MIXERLINECONTROLS mxlctrl = {sizeof(mxlctrl), Line.dwLineID, MIXERCONTROL_CONTROLTYPE_VOLUME, 1, sizeof(MIXERCONTROL), pmxctrl};  
 					if(!mixerGetLineControls((HMIXEROBJ)dwMixerHandle, &mxlctrl,  
 						MIXER_GETLINECONTROLSF_ONEBYTYPE)){  
-							// Found!  
-							DWORD cChannels = Line.cChannels;  
+							DWORD cChannels = Line.cChannels;
+							LPMIXERCONTROLDETAILS_UNSIGNED pUnsigned;
+							MIXERCONTROLDETAILS mxcd;
 							if (MIXERCONTROL_CONTROLF_UNIFORM & pmxctrl->fdwControl)  
 								cChannels = 1;  
-							LPMIXERCONTROLDETAILS_UNSIGNED pUnsigned =  
+							pUnsigned =  
 								(LPMIXERCONTROLDETAILS_UNSIGNED)  
-								malloc(cChannels * sizeof MIXERCONTROLDETAILS_UNSIGNED);  
-							MIXERCONTROLDETAILS mxcd = {sizeof(mxcd), pmxctrl->dwControlID,  
-								cChannels, (HWND)0,  
-								sizeof MIXERCONTROLDETAILS_UNSIGNED, (LPVOID) pUnsigned};  
+								malloc(cChannels * sizeof(MIXERCONTROLDETAILS_UNSIGNED));
+
+							mxcd.cbStruct = sizeof(mxcd);
+							mxcd.dwControlID = pmxctrl->dwControlID;
+							mxcd.cChannels = cChannels;
+							mxcd.hwndOwner = (HWND)0;
+							mxcd.cbDetails = sizeof(MIXERCONTROLDETAILS_UNSIGNED);
+							mxcd.paDetails = (LPVOID) pUnsigned;
+
 							mixerGetControlDetails((HMIXEROBJ)dwMixerHandle, &mxcd,  
 								MIXER_SETCONTROLDETAILSF_VALUE);  
-							// Set the volume to the middle  (for both channels as needed)  
 							pUnsigned[0].dwValue = pUnsigned[cChannels - 1].dwValue
 								=  pmxctrl->Bounds.dwMaximum*percent/100;
-								// = (pmxctrl->Bounds.dwMinimum+pmxctrl->Bounds.dwMaximum)/2;  
 							mixerSetControlDetails((HMIXEROBJ)dwMixerHandle, &mxcd,  
 								MIXER_SETCONTROLDETAILSF_VALUE);  
 							free(pmxctrl);  
@@ -203,7 +212,6 @@ static void winsndcard_set_level(MSSndCard *card, MSSndCardMixerElem e, int perc
 				}
 			}
 			mixerClose( (HMIXER)dwMixerHandle );
-			//mr = waveInSetVolume((HWAVEIN)d->in_devid, dwVolume);
 	        if (mr != MMSYSERR_NOERROR)
 	        {
                 ms_warning("Failed to set capture volume. (waveInSetVolume:0x%i)", mr);
@@ -212,6 +220,11 @@ static void winsndcard_set_level(MSSndCard *card, MSSndCardMixerElem e, int perc
 		break;
 		case MS_SND_CARD_PLAYBACK:
 			{
+				MIXERLINECONTROLS mlc = {0};
+				MIXERCONTROL mc = {0};
+				MIXERCONTROLDETAILS mcd = {0};
+				MIXERCONTROLDETAILS_UNSIGNED mcdu = {0};
+
 				mr = mixerGetID( (HMIXEROBJ)d->out_devid, &uMixerID, MIXER_OBJECTF_WAVEOUT );
 				if ( mr != MMSYSERR_NOERROR )
 				{
@@ -239,8 +252,6 @@ static void winsndcard_set_level(MSSndCard *card, MSSndCardMixerElem e, int perc
 				ms_message("Source Line: %d\n", MixerLine.dwSource);
 				ms_message("ComponentType: %d\n", MixerLine.dwComponentType);
 
-				MIXERLINECONTROLS mlc = {0};
-				MIXERCONTROL mc = {0};
 				mlc.cbStruct = sizeof(MIXERLINECONTROLS);
 				mlc.dwLineID = MixerLine.dwLineID;
 				mlc.dwControlType = MIXERCONTROL_CONTROLTYPE_VOLUME;
@@ -251,9 +262,7 @@ static void winsndcard_set_level(MSSndCard *card, MSSndCardMixerElem e, int perc
 					&mlc, MIXER_GETLINECONTROLSF_ONEBYTYPE);
 
 
-				MIXERCONTROLDETAILS mcd = {0};
-				MIXERCONTROLDETAILS_UNSIGNED mcdu = {0};
-				mcdu.dwValue = 65535*percent/100; // the volume is a number between 0 and 65535
+				mcdu.dwValue = 65535*percent/100; /* the volume is a number between 0 and 65535 */
 
 				mcd.cbStruct = sizeof(MIXERCONTROLDETAILS);
 				mcd.hwndOwner = 0;
@@ -264,7 +273,6 @@ static void winsndcard_set_level(MSSndCard *card, MSSndCardMixerElem e, int perc
 				mr = mixerSetControlDetails((HMIXEROBJ)dwMixerHandle, 
 					&mcd, MIXER_SETCONTROLDETAILSF_VALUE);
 
-				//mr = waveOutSetVolume((HWAVEOUT)d->out_devid, dwVolume);
 				if (mr != MMSYSERR_NOERROR)
 				{
 					ms_warning("Failed to set playback volume. (waveOutSetVolume:0x%i)", mr);
@@ -395,7 +403,6 @@ static void winsndcard_detect(MSSndCardManager *m){
 			char szName[256];
 			WideCharToMultiByte(CP_UTF8,0,incaps.szPname,-1,szName,256,0,0);
 			add_or_update_card(m,szName,item,-1,MS_SND_CARD_CAP_CAPTURE);
-			//add_or_update_card(m,incaps.szPname,item,-1,MS_SND_CARD_CAP_CAPTURE);
 #endif
 		}
     	mr = waveOutGetDevCaps (item, &outcaps, sizeof (WAVEOUTCAPS));
@@ -410,7 +417,6 @@ static void winsndcard_detect(MSSndCardManager *m){
 			char szName[256];
 			WideCharToMultiByte(CP_UTF8,0,outcaps.szPname,-1,szName,256,0,0);
     		add_or_update_card(m,szName,-1,item,MS_SND_CARD_CAP_PLAYBACK);
-    		//add_or_update_card(m,outcaps.szPname,-1,item,MS_SND_CARD_CAP_PLAYBACK);
 #endif
 		}
     }
@@ -451,6 +457,7 @@ static void winsnd_apply_settings(WinSnd *d){
 }
 
 
+//#define _TRUE_TIME
 #ifndef _TRUE_TIME
 static uint64_t winsnd_get_cur_time( void *data){
 	WinSnd *d=(WinSnd*)data;
@@ -961,7 +968,7 @@ static void winsnd_write_process(MSFilter *f){
 			}
 		}
 		if (i==d->stat_minimumbuffer){
-			//ms_error("winsnd_write_process: All buffers are busy.");
+			/* ms_error("winsnd_write_process: All buffers are busy."); */
 #ifndef DISABLE_SPEEX
 			if (d->pst==NULL)
 			{
-- 
GitLab