diff --git a/src/controleur.c b/src/controleur.c index f7f1b5329bb9e9383eb70af9e0015ec4d6b890c3..67895debfc13a6e1649db8f08098641754a620bd 100644 --- a/src/controleur.c +++ b/src/controleur.c @@ -75,7 +75,6 @@ void initJeu(){ for(i=0;i<nbClasses();i++){ tabNomClasses[i]= malloc(TAILLE_NOMS*sizeof(char)); } - //Copie des noms de classes dans le tableau for(i=0;i<nbClasses();i++){ strncpy(tabNomClasses[i],packGlobal.Classes_Package[i].nom, TAILLE_NOMS); @@ -107,10 +106,24 @@ void initJeu(){ } /*! - * \fn int nbClasses() - * \brief Fonction renvoyer le nombre de classes contenues dans le package du jeu + * \fn void freeClasses() + * \brief La fonction libère un tableau de chaines de charactères alloué pour stocker les informations sur les classes. * - * \return le nombre de classes contenues dans le package du jeu + * \param + */ + void freeClasses(char ** tab){ + int i; + for(i=0;i<nbClasses();i++){ + free(tab[i]); + } + free(tab); +} + + /*! + * \fn int nbCartes() + * \brief Fonction renvoyer le nombre de cartes contenues dans le package du jeu + * + * \return le nombre de cartes contenues dans le package du jeu */ int nbCartes(){ return getNbCartes(packGlobal); @@ -160,6 +173,20 @@ char ** obtenirDescriptionCarte(){ return tabDescCartes; } + /*! + * \fn void freeCartes() + * \brief La fonction libère un tableau de chaines de charactères alloué pour stocker les informations sur la carte. + * + * \param + */ + void freeCartes(char ** tab){ + int i; + for(i=0;i<nbCartes();i++){ + free(tab[i]); + } + free(tab); +} + diff --git a/src/controleur.h b/src/controleur.h index 433707ac1c04719c18673019cbb6baf522899bd8..f1328e1f5f455cd6d272d06c7c7f5dbf56379155 100644 --- a/src/controleur.h +++ b/src/controleur.h @@ -15,10 +15,12 @@ void ajouterUnJoueur(char * nomDuJoueur, EtatsJeu * etat); int nbClasses(); char ** obtenirNomsClasses(); char ** obtenirSkinsClasses(); +void freeClasses(char ** tab); int nbCartes(); char ** obtenirNomsCartes(); char ** obtenirDescriptionCarte(); +void freeCartes(char **); #endif // CONTROLEUR_H