printf("this is the modem inside the modemconfig %s \n", ModemList.ToNewCString());
printf("this is the modem inside the modemconfig %s \n", NS_LossyConvertUCS2toASCII(ModemList).get());
NS_IMETHODIMP nsAccount::GetModemConfig(nsString& ModemList){	nsresult rv=NS_OK;	char**          modemResults;	nsresult rve = nsAccount::Startup();	int             numDevices;	int             i;	nsString                 str, tmp, returnData;	modemResults=(char**)PR_MALLOC(20*256);	if ( !::GetModemList( &modemResults, &numDevices ) )	{		if ( modemResults != NULL )		{			for ( i = 0; i < numDevices; i++ )			{				if ( modemResults[ i ] != NULL )					delete []modemResults[ i ];			}			delete []modemResults;		}		return NULL;	}	// copy all entries to the array//	returnData[ 0 ] = 0x00;//	returnData ="";	// pile up account names in a single array, separated by a ()/*	for ( i = 0; i < numDevices; i++ ) 	{   		tmp = modemResults[ i ];		str += tmp;		str += "()";  		delete []modemResults[ i ];	}*/				for ( i=0; i < numDevices; i++)			{				if (i != 0)				{					ModemList.AppendWithConversion(",");				}				ModemList.AppendWithConversion(modemResults[i]);      }//	strcpy( returnData, (const char*)str ); //	returnData = modemResults[0];//	returnData = tmp;	printf("this is the modem inside the modemconfig %s \n", ModemList.ToNewCString());	delete []modemResults;return rv;}