(Courriels de diversion: <accoudera@automatiserai-telephonerai.com> <exergues@administrativement-baissee.com> <controleraient@desespererions-situant.com> <soupconnons@estimatives-suspend.com> <priserai@debandes-ecrivain.com> <desassortis@boots-fixerions.com> <chauvinisme@desapprovisionnees-subtile.com> <relaye@corroder-visualises.com> <prevaudrions@recommandables-suspectees.com> <internationalisees@gît-electorale.com> )


Le 5 Jan, Philippe CASIDY écrit :
> On  5 Jan, benech wrote:

>> je developpe sous Motif 1.2 et une des fonctions classiques ne
>> fonctionne pas. En effet, je souhaite liberer l espace memoire occupe
>> par une XmStringTable.
>> 
>> Dans le manuel de reference, il est indique de pratiquer de la
>> maniere suivante
>> :
>> void FreeXmStringTable(argv)
>> XmStringTable argv;
>> {
>>         register int i;
>>         if(!argv)
>> 	return;
>>         for(i=0; argv[i];i++)
>> 	XmStringFree(argv[i]);
>>         XtFree(argv);
>> }
>> 
>> Or la fonction XtFree n accepte pas une XmStringTable en argument!!!
>> 
> 
> A tout hasard, il n'y aurait pas une fonction XmFree() ?

  Non. Tout n'est pas redéfini. Dans l'optique Motif, soit tu as un type
opaque (et donc des *Free), soit la structure est exposée et tu n'as pas
forcément de Free spécifique.

  Donc, soit il existe XmStringTableFree, soit il faut faire un XtFree.

  Dans ce dernier cas, le problème rencontré par Nathalie est sans doute
du au fait que XtFree déclare prendre un pointeur sur caractère en
argument (pourquoi tant de haine ?), et pas un pointeur sur XmString.

  Il suffit vraisemblablement de forcer le type de l'argument à l'appel,
du style : XtFree((char *)argv).

-- 
Marc Thirion              | Ramonville Saint-Agne, France
Un Travail pour Chacun    : http://www.multimania.com/untravailchacun/
Marc.Thirion@ISOscope.com : http://www.ISOscope.com/Pérennité des logiciels et des systèmes



---------------------------------------------------------------------
Aide sur la liste: <URL:mailto:linux-31-help@savage.iut-blagnac.fr>Le CULTe sur le web: <URL:http://www.CULTe.org/>