Source code translated to english
git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@697 416bcca6-2ee7-4201-b75f-2eb2f807beb1
This commit is contained in:
554
saveini.c
554
saveini.c
@@ -30,70 +30,70 @@
|
||||
#include "erreurs.h"
|
||||
#include "divers.h"
|
||||
|
||||
int Sauver_INI_Reach_group(FILE * Old_file,FILE * New_file,char * Buffer,char * Group)
|
||||
int Save_INI_reach_group(FILE * old_file,FILE * new_file,char * buffer,char * group)
|
||||
{
|
||||
int Arret;
|
||||
char * Group_upper;
|
||||
char * Buffer_upper;
|
||||
int stop_seek;
|
||||
char * group_upper;
|
||||
char * upper_buffer;
|
||||
|
||||
// On alloue les zones de mémoire:
|
||||
Group_upper =(char *)malloc(1024);
|
||||
Buffer_upper=(char *)malloc(1024);
|
||||
group_upper =(char *)malloc(1024);
|
||||
upper_buffer=(char *)malloc(1024);
|
||||
|
||||
// On commence par se faire une version majuscule du groupe à rechercher:
|
||||
strcpy(Group_upper,Group);
|
||||
Charger_INI_Clear_string(Group_upper);
|
||||
strcpy(group_upper,group);
|
||||
Load_INI_clear_string(group_upper);
|
||||
|
||||
Arret=0;
|
||||
stop_seek=0;
|
||||
do
|
||||
{
|
||||
// On lit une ligne dans le fichier:
|
||||
if (fgets(Buffer,1024,Old_file)==0)
|
||||
if (fgets(buffer,1024,old_file)==0)
|
||||
{
|
||||
free(Buffer_upper);
|
||||
free(Group_upper);
|
||||
return ERREUR_INI_CORROMPU;
|
||||
free(upper_buffer);
|
||||
free(group_upper);
|
||||
return ERROR_INI_CORRUPTED;
|
||||
}
|
||||
|
||||
// On s'en fait une version en majuscule:
|
||||
strcpy(Buffer_upper,Buffer);
|
||||
Charger_INI_Clear_string(Buffer_upper);
|
||||
strcpy(upper_buffer,buffer);
|
||||
Load_INI_clear_string(upper_buffer);
|
||||
|
||||
// On compare la chaîne avec le groupe recherché:
|
||||
Arret=Charger_INI_Seek_pattern(Buffer_upper,Group_upper);
|
||||
if (fprintf(New_file,"%s",Buffer)<0)
|
||||
stop_seek=Load_INI_seek_pattern(upper_buffer,group_upper);
|
||||
if (fprintf(new_file,"%s",buffer)<0)
|
||||
{
|
||||
free(Buffer_upper);
|
||||
free(Group_upper);
|
||||
return ERREUR_SAUVEGARDE_INI;
|
||||
free(upper_buffer);
|
||||
free(group_upper);
|
||||
return ERROR_SAVING_INI;
|
||||
}
|
||||
}
|
||||
while (Arret==0);
|
||||
while (stop_seek==0);
|
||||
|
||||
free(Buffer_upper);
|
||||
free(Group_upper);
|
||||
free(upper_buffer);
|
||||
free(group_upper);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
|
||||
int Sauver_INI_char_in_value_alphabet(char Char)
|
||||
int Save_INI_char_in_value_alphabet(char c)
|
||||
{
|
||||
if (
|
||||
( // Chiffre
|
||||
(Char>='0') &&
|
||||
(Char<='9')
|
||||
(c>='0') &&
|
||||
(c<='9')
|
||||
) ||
|
||||
( // Lettre majuscule
|
||||
(Char>='A') &&
|
||||
(Char<='Z')
|
||||
(c>='A') &&
|
||||
(c<='Z')
|
||||
) ||
|
||||
( // Lettre minuscule
|
||||
(Char>='a') &&
|
||||
(Char<='z')
|
||||
(c>='a') &&
|
||||
(c<='z')
|
||||
) ||
|
||||
(Char == '$') // Symbole d'hexadécimal
|
||||
(c == '$') // Symbole d'hexadécimal
|
||||
)
|
||||
return 1;
|
||||
else
|
||||
@@ -102,541 +102,541 @@ int Sauver_INI_char_in_value_alphabet(char Char)
|
||||
|
||||
|
||||
|
||||
void Sauver_INI_Set_value(char * dest,char * Source,int Nb_values_to_set,int * Values,int Litteral)
|
||||
void Save_INI_set_value(char * dest,char * source,int nb_values_to_set,int * values,int litteral)
|
||||
{
|
||||
int Indice_destination;
|
||||
int Indice_source;
|
||||
int Indice_valeur;
|
||||
int dest_index;
|
||||
int source_index;
|
||||
int value_index;
|
||||
|
||||
// On commence par recopier tout jusqu'au symbole '=':
|
||||
for (Indice_source=0;Source[Indice_source]!='=';Indice_source++)
|
||||
dest[Indice_source]=Source[Indice_source];
|
||||
for (source_index=0;source[source_index]!='=';source_index++)
|
||||
dest[source_index]=source[source_index];
|
||||
|
||||
// Puis on recopie le symbole '=':
|
||||
dest[Indice_source]=Source[Indice_source];
|
||||
Indice_source++;
|
||||
dest[source_index]=source[source_index];
|
||||
source_index++;
|
||||
|
||||
// Puis on recopie tous les espaces qui suivent:
|
||||
for (;Source[Indice_source]==' ';Indice_source++)
|
||||
dest[Indice_source]=Source[Indice_source];
|
||||
for (;source[source_index]==' ';source_index++)
|
||||
dest[source_index]=source[source_index];
|
||||
|
||||
// Pour l'instant, la source et la destination en sont au même point:
|
||||
Indice_destination=Indice_source;
|
||||
dest_index=source_index;
|
||||
|
||||
// Puis pour chaque valeur à recopier:
|
||||
for (Indice_valeur=0;Indice_valeur<Nb_values_to_set;Indice_valeur++)
|
||||
for (value_index=0;value_index<nb_values_to_set;value_index++)
|
||||
{
|
||||
// Dans la destination, on écrit la valeur:
|
||||
if (Litteral)
|
||||
if (litteral)
|
||||
{
|
||||
// La valeur doit être écrite sous la forme Yes/No
|
||||
|
||||
if (Values[Indice_valeur])
|
||||
if (values[value_index])
|
||||
{
|
||||
// La valeur <=> Yes
|
||||
|
||||
memcpy(dest+Indice_destination,"yes",3);
|
||||
Indice_destination+=3;
|
||||
memcpy(dest+dest_index,"yes",3);
|
||||
dest_index+=3;
|
||||
}
|
||||
else
|
||||
{
|
||||
// La valeur <=> No
|
||||
|
||||
memcpy(dest+Indice_destination,"no",2);
|
||||
Indice_destination+=2;
|
||||
memcpy(dest+dest_index,"no",2);
|
||||
dest_index+=2;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
// La valeur doit être écrite sous forme numérique
|
||||
|
||||
if (Source[Indice_source]=='$')
|
||||
if (source[source_index]=='$')
|
||||
{
|
||||
// On va écrire la valeur sous forme hexadécimale:
|
||||
|
||||
// On commence par inscrire le symbole '$':
|
||||
dest[Indice_destination]='$';
|
||||
dest[dest_index]='$';
|
||||
|
||||
// Puis on y concatène la valeur:
|
||||
sprintf(dest+Indice_destination+1,"%x",Values[Indice_valeur]);
|
||||
Indice_destination+=strlen(dest+Indice_destination);
|
||||
sprintf(dest+dest_index+1,"%x",values[value_index]);
|
||||
dest_index+=strlen(dest+dest_index);
|
||||
}
|
||||
else
|
||||
{
|
||||
// On va écrire la valeur sous forme décimale:
|
||||
|
||||
sprintf(dest+Indice_destination,"%d",Values[Indice_valeur]);
|
||||
Indice_destination+=strlen(dest+Indice_destination);
|
||||
sprintf(dest+dest_index,"%d",values[value_index]);
|
||||
dest_index+=strlen(dest+dest_index);
|
||||
}
|
||||
}
|
||||
|
||||
// Dans la source, on saute la valeur:
|
||||
for (;Sauver_INI_char_in_value_alphabet(Source[Indice_source]) && (Source[Indice_source]!='\0');Indice_source++);
|
||||
for (;Save_INI_char_in_value_alphabet(source[source_index]) && (source[source_index]!='\0');source_index++);
|
||||
|
||||
if (Indice_valeur!=(Nb_values_to_set-1))
|
||||
if (value_index!=(nb_values_to_set-1))
|
||||
{
|
||||
// Il reste d'autres valeurs à écrire
|
||||
|
||||
// On recopie tous les caractères de la source jusqu'au suivant qui
|
||||
// désigne une valeur:
|
||||
for (;(!Sauver_INI_char_in_value_alphabet(Source[Indice_source])) && (Source[Indice_source]!='\0');Indice_source++,Indice_destination++)
|
||||
dest[Indice_destination]=Source[Indice_source];
|
||||
for (;(!Save_INI_char_in_value_alphabet(source[source_index])) && (source[source_index]!='\0');source_index++,dest_index++)
|
||||
dest[dest_index]=source[source_index];
|
||||
}
|
||||
else
|
||||
{
|
||||
// C'est la dernière valeur à initialiser
|
||||
|
||||
// On recopie toute la fin de la ligne:
|
||||
for (;Source[Indice_source]!='\0';Indice_source++,Indice_destination++)
|
||||
dest[Indice_destination]=Source[Indice_source];
|
||||
for (;source[source_index]!='\0';source_index++,dest_index++)
|
||||
dest[dest_index]=source[source_index];
|
||||
|
||||
// Et on n'oublie pas d'y mettre l''\0':
|
||||
dest[Indice_destination]='\0';
|
||||
dest[dest_index]='\0';
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void Sauver_INI_Set_string(char * dest,char * Source,char * Value)
|
||||
void Save_INI_set_string(char * dest,char * source,char * value)
|
||||
{
|
||||
int Indice_destination;
|
||||
int Indice_source;
|
||||
int dest_index;
|
||||
int source_index;
|
||||
|
||||
// On commence par recopier tout jusqu'au symbole '=':
|
||||
for (Indice_source=0;Source[Indice_source]!='=';Indice_source++)
|
||||
dest[Indice_source]=Source[Indice_source];
|
||||
for (source_index=0;source[source_index]!='=';source_index++)
|
||||
dest[source_index]=source[source_index];
|
||||
|
||||
// Puis on recopie le symbole '=':
|
||||
dest[Indice_source]=Source[Indice_source];
|
||||
Indice_source++;
|
||||
dest[source_index]=source[source_index];
|
||||
source_index++;
|
||||
|
||||
// Puis on recopie tous les espaces qui suivent:
|
||||
for (;Source[Indice_source]==' ';Indice_source++)
|
||||
dest[Indice_source]=Source[Indice_source];
|
||||
for (;source[source_index]==' ';source_index++)
|
||||
dest[source_index]=source[source_index];
|
||||
|
||||
// Pour l'instant, la source et la destination en sont au même point:
|
||||
Indice_destination=Indice_source;
|
||||
dest_index=source_index;
|
||||
|
||||
// Dans la destination, on écrit la valeur:
|
||||
strcpy(dest+Indice_destination,Value);
|
||||
Indice_destination+=strlen(Value);
|
||||
strcpy(dest+dest_index,value);
|
||||
dest_index+=strlen(value);
|
||||
|
||||
// Dans la source, on saute la valeur:
|
||||
for (;Sauver_INI_char_in_value_alphabet(Source[Indice_source]) && (Source[Indice_source]!='\0');Indice_source++);
|
||||
for (;Save_INI_char_in_value_alphabet(source[source_index]) && (source[source_index]!='\0');source_index++);
|
||||
|
||||
// On recopie toute la fin de la ligne:
|
||||
for (;Source[Indice_source]!='\0';Indice_source++,Indice_destination++)
|
||||
dest[Indice_destination]=Source[Indice_source];
|
||||
for (;source[source_index]!='\0';source_index++,dest_index++)
|
||||
dest[dest_index]=source[source_index];
|
||||
|
||||
// Et on n'oublie pas d'y mettre l''\0':
|
||||
dest[Indice_destination]='\0';
|
||||
dest[dest_index]='\0';
|
||||
}
|
||||
|
||||
int Sauver_INI_Set_strings(FILE * Old_file,FILE * New_file,char * Buffer,char * Option,char * Value)
|
||||
int Save_INI_set_strings(FILE * old_file,FILE * new_file,char * buffer,char * option_name,char * value)
|
||||
{
|
||||
int Arret;
|
||||
char * Option_upper;
|
||||
char * Buffer_upper;
|
||||
char * Buffer_resultat;
|
||||
//int Indice_buffer;
|
||||
int stop_seek;
|
||||
char * option_upper;
|
||||
char * upper_buffer;
|
||||
char * result_buffer;
|
||||
//int buffer_index;
|
||||
|
||||
// On alloue les zones de mémoire:
|
||||
Option_upper=(char *)malloc(1024);
|
||||
Buffer_upper=(char *)malloc(1024);
|
||||
Buffer_resultat=(char *)malloc(1024);
|
||||
option_upper=(char *)malloc(1024);
|
||||
upper_buffer=(char *)malloc(1024);
|
||||
result_buffer=(char *)malloc(1024);
|
||||
|
||||
// On convertit un eventuel argument NULL en chaine vide.
|
||||
if (Value == NULL)
|
||||
Value="";
|
||||
if (value == NULL)
|
||||
value="";
|
||||
|
||||
// On commence par se faire une version majuscule de l'option à rechercher:
|
||||
strcpy(Option_upper,Option);
|
||||
Charger_INI_Clear_string(Option_upper);
|
||||
strcpy(option_upper,option_name);
|
||||
Load_INI_clear_string(option_upper);
|
||||
|
||||
Arret=0;
|
||||
stop_seek=0;
|
||||
do
|
||||
{
|
||||
// On lit une ligne dans le fichier:
|
||||
if (fgets(Buffer,1024,Old_file)==0)
|
||||
if (fgets(buffer,1024,old_file)==0)
|
||||
{
|
||||
free(Buffer_resultat);
|
||||
free(Buffer_upper);
|
||||
free(Option_upper);
|
||||
return ERREUR_INI_CORROMPU;
|
||||
free(result_buffer);
|
||||
free(upper_buffer);
|
||||
free(option_upper);
|
||||
return ERROR_INI_CORRUPTED;
|
||||
}
|
||||
|
||||
// On s'en fait une version en majuscule:
|
||||
strcpy(Buffer_upper,Buffer);
|
||||
Charger_INI_Clear_string(Buffer_upper);
|
||||
strcpy(upper_buffer,buffer);
|
||||
Load_INI_clear_string(upper_buffer);
|
||||
|
||||
// On compare la chaîne avec l'option recherchée:
|
||||
Arret=Charger_INI_Seek_pattern(Buffer_upper,Option_upper);
|
||||
stop_seek=Load_INI_seek_pattern(upper_buffer,option_upper);
|
||||
|
||||
if (Arret)
|
||||
if (stop_seek)
|
||||
{
|
||||
// On l'a trouvée:
|
||||
|
||||
Sauver_INI_Set_string(Buffer_resultat,Buffer,Value);
|
||||
if (fprintf(New_file,"%s",Buffer_resultat)<0)
|
||||
Save_INI_set_string(result_buffer,buffer,value);
|
||||
if (fprintf(new_file,"%s",result_buffer)<0)
|
||||
{
|
||||
free(Buffer_resultat);
|
||||
free(Buffer_upper);
|
||||
free(Option_upper);
|
||||
return ERREUR_SAUVEGARDE_INI;
|
||||
free(result_buffer);
|
||||
free(upper_buffer);
|
||||
free(option_upper);
|
||||
return ERROR_SAVING_INI;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
// On l'a pas trouvée:
|
||||
|
||||
if (fprintf(New_file,"%s",Buffer)<0)
|
||||
if (fprintf(new_file,"%s",buffer)<0)
|
||||
{
|
||||
free(Buffer_resultat);
|
||||
free(Buffer_upper);
|
||||
free(Option_upper);
|
||||
return ERREUR_SAUVEGARDE_INI;
|
||||
free(result_buffer);
|
||||
free(upper_buffer);
|
||||
free(option_upper);
|
||||
return ERROR_SAVING_INI;
|
||||
}
|
||||
}
|
||||
}
|
||||
while (Arret==0);
|
||||
while (stop_seek==0);
|
||||
|
||||
free(Buffer_resultat);
|
||||
free(Buffer_upper);
|
||||
free(Option_upper);
|
||||
free(result_buffer);
|
||||
free(upper_buffer);
|
||||
free(option_upper);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
int Sauver_INI_Set_values(FILE * Old_file,FILE * New_file,char * Buffer,char * Option,int Nb_values_to_set,int * Values,int Litteral)
|
||||
int Save_INI_set_values(FILE * old_file,FILE * new_file,char * buffer,char * option_name,int nb_values_to_set,int * values,int litteral)
|
||||
{
|
||||
int Arret;
|
||||
char * Option_upper;
|
||||
char * Buffer_upper;
|
||||
char * Buffer_resultat;
|
||||
//int Indice_buffer;
|
||||
int stop_seek;
|
||||
char * option_upper;
|
||||
char * upper_buffer;
|
||||
char * result_buffer;
|
||||
//int buffer_index;
|
||||
|
||||
// On alloue les zones de mémoire:
|
||||
Option_upper=(char *)malloc(1024);
|
||||
Buffer_upper=(char *)malloc(1024);
|
||||
Buffer_resultat=(char *)malloc(1024);
|
||||
option_upper=(char *)malloc(1024);
|
||||
upper_buffer=(char *)malloc(1024);
|
||||
result_buffer=(char *)malloc(1024);
|
||||
|
||||
// On commence par se faire une version majuscule de l'option à rechercher:
|
||||
strcpy(Option_upper,Option);
|
||||
Charger_INI_Clear_string(Option_upper);
|
||||
strcpy(option_upper,option_name);
|
||||
Load_INI_clear_string(option_upper);
|
||||
|
||||
Arret=0;
|
||||
stop_seek=0;
|
||||
do
|
||||
{
|
||||
// On lit une ligne dans le fichier:
|
||||
if (fgets(Buffer,1024,Old_file)==0)
|
||||
if (fgets(buffer,1024,old_file)==0)
|
||||
{
|
||||
free(Buffer_resultat);
|
||||
free(Buffer_upper);
|
||||
free(Option_upper);
|
||||
return ERREUR_INI_CORROMPU;
|
||||
free(result_buffer);
|
||||
free(upper_buffer);
|
||||
free(option_upper);
|
||||
return ERROR_INI_CORRUPTED;
|
||||
}
|
||||
|
||||
// On s'en fait une version en majuscule:
|
||||
strcpy(Buffer_upper,Buffer);
|
||||
Charger_INI_Clear_string(Buffer_upper);
|
||||
strcpy(upper_buffer,buffer);
|
||||
Load_INI_clear_string(upper_buffer);
|
||||
|
||||
// On compare la chaîne avec l'option recherchée:
|
||||
Arret=Charger_INI_Seek_pattern(Buffer_upper,Option_upper);
|
||||
stop_seek=Load_INI_seek_pattern(upper_buffer,option_upper);
|
||||
|
||||
if (Arret)
|
||||
if (stop_seek)
|
||||
{
|
||||
// On l'a trouvée:
|
||||
|
||||
Sauver_INI_Set_value(Buffer_resultat,Buffer,Nb_values_to_set,Values,Litteral);
|
||||
if (fprintf(New_file,"%s",Buffer_resultat)<0)
|
||||
Save_INI_set_value(result_buffer,buffer,nb_values_to_set,values,litteral);
|
||||
if (fprintf(new_file,"%s",result_buffer)<0)
|
||||
{
|
||||
free(Buffer_resultat);
|
||||
free(Buffer_upper);
|
||||
free(Option_upper);
|
||||
return ERREUR_SAUVEGARDE_INI;
|
||||
free(result_buffer);
|
||||
free(upper_buffer);
|
||||
free(option_upper);
|
||||
return ERROR_SAVING_INI;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
// On l'a pas trouvée:
|
||||
|
||||
if (fprintf(New_file,"%s",Buffer)<0)
|
||||
if (fprintf(new_file,"%s",buffer)<0)
|
||||
{
|
||||
free(Buffer_resultat);
|
||||
free(Buffer_upper);
|
||||
free(Option_upper);
|
||||
return ERREUR_SAUVEGARDE_INI;
|
||||
free(result_buffer);
|
||||
free(upper_buffer);
|
||||
free(option_upper);
|
||||
return ERROR_SAVING_INI;
|
||||
}
|
||||
}
|
||||
}
|
||||
while (Arret==0);
|
||||
while (stop_seek==0);
|
||||
|
||||
free(Buffer_resultat);
|
||||
free(Buffer_upper);
|
||||
free(Option_upper);
|
||||
free(result_buffer);
|
||||
free(upper_buffer);
|
||||
free(option_upper);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
|
||||
void Sauver_INI_Flush(FILE * Old_file,FILE * New_file,char * Buffer)
|
||||
void Save_INI_flush(FILE * old_file,FILE * new_file,char * buffer)
|
||||
{
|
||||
while (fgets(Buffer,1024,Old_file)!=0)
|
||||
fprintf(New_file,"%s",Buffer);
|
||||
while (fgets(buffer,1024,old_file)!=0)
|
||||
fprintf(new_file,"%s",buffer);
|
||||
}
|
||||
|
||||
|
||||
|
||||
int Sauver_INI(T_Config * Conf)
|
||||
int Save_INI(T_Config * conf)
|
||||
{
|
||||
FILE * Ancien_fichier;
|
||||
FILE * Nouveau_fichier;
|
||||
char * Buffer;
|
||||
char * buffer;
|
||||
int values[3];
|
||||
char Nom_du_fichier[TAILLE_CHEMIN_FICHIER];
|
||||
char Nom_du_fichier_temporaire[TAILLE_CHEMIN_FICHIER];
|
||||
char filename[MAX_PATH_CHARACTERS];
|
||||
char temp_filename[MAX_PATH_CHARACTERS];
|
||||
int return_code;
|
||||
char Nom_du_fichier_DAT[TAILLE_CHEMIN_FICHIER];
|
||||
int Ini_existe;
|
||||
int Indice;
|
||||
char ref_ini_file[MAX_PATH_CHARACTERS];
|
||||
int ini_file_exists;
|
||||
int index;
|
||||
|
||||
// On alloue les zones de mémoire:
|
||||
Buffer=(char *)malloc(1024);
|
||||
buffer=(char *)malloc(1024);
|
||||
|
||||
// On calcule les noms des fichiers qu'on manipule:
|
||||
strcpy(Nom_du_fichier,Repertoire_de_configuration);
|
||||
strcat(Nom_du_fichier,"gfx2.ini");
|
||||
strcpy(filename,Config_directory);
|
||||
strcat(filename,"gfx2.ini");
|
||||
|
||||
// On vérifie si le fichier INI existe
|
||||
if ((Ini_existe = Fichier_existe(Nom_du_fichier)))
|
||||
if ((ini_file_exists = File_exists(filename)))
|
||||
{
|
||||
strcpy(Nom_du_fichier_temporaire,Repertoire_de_configuration);
|
||||
strcat(Nom_du_fichier_temporaire,"gfx2.$$$");
|
||||
strcpy(temp_filename,Config_directory);
|
||||
strcat(temp_filename,"gfx2.$$$");
|
||||
|
||||
// On renome l'ancienne version du fichier INI vers un fichier temporaire:
|
||||
if (rename(Nom_du_fichier,Nom_du_fichier_temporaire)!=0)
|
||||
if (rename(filename,temp_filename)!=0)
|
||||
{
|
||||
goto Erreur_ERREUR_SAUVEGARDE_INI;
|
||||
}
|
||||
}
|
||||
// On récupère un fichier INI "propre" à partir de gfx2def.ini
|
||||
strcpy(Nom_du_fichier_DAT,Repertoire_des_donnees);
|
||||
strcat(Nom_du_fichier_DAT,"gfx2def.ini");
|
||||
Ancien_fichier=fopen(Nom_du_fichier_DAT,"rb");
|
||||
strcpy(ref_ini_file,Repertoire_des_donnees);
|
||||
strcat(ref_ini_file,"gfx2def.ini");
|
||||
Ancien_fichier=fopen(ref_ini_file,"rb");
|
||||
if (Ancien_fichier==0)
|
||||
{
|
||||
fclose(Ancien_fichier);
|
||||
return ERREUR_INI_ABSENT;
|
||||
return ERROR_INI_MISSING;
|
||||
}
|
||||
Nouveau_fichier=fopen(Nom_du_fichier,"wb");
|
||||
Nouveau_fichier=fopen(filename,"wb");
|
||||
if (Nouveau_fichier==0)
|
||||
{
|
||||
free(Buffer);
|
||||
return ERREUR_SAUVEGARDE_INI;
|
||||
free(buffer);
|
||||
return ERROR_SAVING_INI;
|
||||
}
|
||||
if ((return_code=Sauver_INI_Reach_group(Ancien_fichier,Nouveau_fichier,Buffer,"[MOUSE]")))
|
||||
if ((return_code=Save_INI_reach_group(Ancien_fichier,Nouveau_fichier,buffer,"[MOUSE]")))
|
||||
goto Erreur_Retour;
|
||||
|
||||
values[0]=Conf->Indice_Sensibilite_souris_X;
|
||||
if ((return_code=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"X_sensitivity",1,values,0)))
|
||||
values[0]=conf->Mouse_sensitivity_index_x;
|
||||
if ((return_code=Save_INI_set_values (Ancien_fichier,Nouveau_fichier,buffer,"X_sensitivity",1,values,0)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
values[0]=Conf->Indice_Sensibilite_souris_Y;
|
||||
if ((return_code=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Y_sensitivity",1,values,0)))
|
||||
values[0]=conf->Mouse_sensitivity_index_y;
|
||||
if ((return_code=Save_INI_set_values (Ancien_fichier,Nouveau_fichier,buffer,"Y_sensitivity",1,values,0)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
values[0]=Conf->Mouse_Facteur_de_correction_X;
|
||||
if ((return_code=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"X_correction_factor",1,values,0)))
|
||||
values[0]=conf->Mouse_fix_factor_X;
|
||||
if ((return_code=Save_INI_set_values (Ancien_fichier,Nouveau_fichier,buffer,"X_correction_factor",1,values,0)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
values[0]=Conf->Mouse_Facteur_de_correction_Y;
|
||||
if ((return_code=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Y_correction_factor",1,values,0)))
|
||||
values[0]=conf->Mouse_fix_factor_Y;
|
||||
if ((return_code=Save_INI_set_values (Ancien_fichier,Nouveau_fichier,buffer,"Y_correction_factor",1,values,0)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
values[0]=(Conf->Curseur)+1;
|
||||
if ((return_code=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Cursor_aspect",1,values,0)))
|
||||
values[0]=(conf->Cursor)+1;
|
||||
if ((return_code=Save_INI_set_values (Ancien_fichier,Nouveau_fichier,buffer,"Cursor_aspect",1,values,0)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
if ((return_code=Sauver_INI_Reach_group(Ancien_fichier,Nouveau_fichier,Buffer,"[MENU]")))
|
||||
if ((return_code=Save_INI_reach_group(Ancien_fichier,Nouveau_fichier,buffer,"[MENU]")))
|
||||
goto Erreur_Retour;
|
||||
|
||||
values[0]=Conf->Coul_menu_pref[2].R>>2;
|
||||
values[1]=Conf->Coul_menu_pref[2].G>>2;
|
||||
values[2]=Conf->Coul_menu_pref[2].B>>2;
|
||||
if ((return_code=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Light_color",3,values,0)))
|
||||
values[0]=conf->Fav_menu_colors[2].R>>2;
|
||||
values[1]=conf->Fav_menu_colors[2].G>>2;
|
||||
values[2]=conf->Fav_menu_colors[2].B>>2;
|
||||
if ((return_code=Save_INI_set_values (Ancien_fichier,Nouveau_fichier,buffer,"Light_color",3,values,0)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
values[0]=Conf->Coul_menu_pref[1].R>>2;
|
||||
values[1]=Conf->Coul_menu_pref[1].G>>2;
|
||||
values[2]=Conf->Coul_menu_pref[1].B>>2;
|
||||
if ((return_code=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Dark_color",3,values,0)))
|
||||
values[0]=conf->Fav_menu_colors[1].R>>2;
|
||||
values[1]=conf->Fav_menu_colors[1].G>>2;
|
||||
values[2]=conf->Fav_menu_colors[1].B>>2;
|
||||
if ((return_code=Save_INI_set_values (Ancien_fichier,Nouveau_fichier,buffer,"Dark_color",3,values,0)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
values[0]=Conf->Ratio;
|
||||
if ((return_code=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Menu_ratio",1,values,0)))
|
||||
values[0]=conf->Ratio;
|
||||
if ((return_code=Save_INI_set_values (Ancien_fichier,Nouveau_fichier,buffer,"Menu_ratio",1,values,0)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
values[0]=(Conf->Fonte)+1;
|
||||
if ((return_code=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Font",1,values,0)))
|
||||
values[0]=(conf->Font)+1;
|
||||
if ((return_code=Save_INI_set_values (Ancien_fichier,Nouveau_fichier,buffer,"Font",1,values,0)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
|
||||
if ((return_code=Sauver_INI_Reach_group(Ancien_fichier,Nouveau_fichier,Buffer,"[FILE_SELECTOR]")))
|
||||
if ((return_code=Save_INI_reach_group(Ancien_fichier,Nouveau_fichier,buffer,"[FILE_SELECTOR]")))
|
||||
goto Erreur_Retour;
|
||||
|
||||
values[0]=Conf->Lire_les_fichiers_caches?1:0;
|
||||
if ((return_code=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Show_hidden_files",1,values,1)))
|
||||
values[0]=conf->Show_hidden_files?1:0;
|
||||
if ((return_code=Save_INI_set_values (Ancien_fichier,Nouveau_fichier,buffer,"Show_hidden_files",1,values,1)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
values[0]=Conf->Lire_les_repertoires_caches?1:0;
|
||||
if ((return_code=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Show_hidden_directories",1,values,1)))
|
||||
values[0]=conf->Show_hidden_directories?1:0;
|
||||
if ((return_code=Save_INI_set_values (Ancien_fichier,Nouveau_fichier,buffer,"Show_hidden_directories",1,values,1)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
/* values[0]=Conf->Lire_les_repertoires_systemes?1:0;
|
||||
if ((return_code=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Show_system_directories",1,values,1)))
|
||||
/* values[0]=conf->Show_system_directories?1:0;
|
||||
if ((return_code=Save_INI_set_values (Ancien_fichier,Nouveau_fichier,buffer,"Show_system_directories",1,values,1)))
|
||||
goto Erreur_Retour;
|
||||
*/
|
||||
values[0]=Conf->Chrono_delay;
|
||||
if ((return_code=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Preview_delay",1,values,0)))
|
||||
values[0]=conf->Timer_delay;
|
||||
if ((return_code=Save_INI_set_values (Ancien_fichier,Nouveau_fichier,buffer,"Preview_delay",1,values,0)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
values[0]=Conf->Maximize_preview;
|
||||
if ((return_code=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Maximize_preview",1,values,1)))
|
||||
values[0]=conf->Maximize_preview;
|
||||
if ((return_code=Save_INI_set_values (Ancien_fichier,Nouveau_fichier,buffer,"Maximize_preview",1,values,1)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
values[0]=Conf->Find_file_fast;
|
||||
if ((return_code=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Find_file_fast",1,values,0)))
|
||||
values[0]=conf->Find_file_fast;
|
||||
if ((return_code=Save_INI_set_values (Ancien_fichier,Nouveau_fichier,buffer,"Find_file_fast",1,values,0)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
|
||||
if ((return_code=Sauver_INI_Reach_group(Ancien_fichier,Nouveau_fichier,Buffer,"[LOADING]")))
|
||||
if ((return_code=Save_INI_reach_group(Ancien_fichier,Nouveau_fichier,buffer,"[LOADING]")))
|
||||
goto Erreur_Retour;
|
||||
|
||||
values[0]=Conf->Auto_set_res;
|
||||
if ((return_code=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Auto_set_resolution",1,values,1)))
|
||||
values[0]=conf->Auto_set_res;
|
||||
if ((return_code=Save_INI_set_values (Ancien_fichier,Nouveau_fichier,buffer,"Auto_set_resolution",1,values,1)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
values[0]=Conf->Set_resolution_according_to;
|
||||
if ((return_code=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Set_resolution_according_to",1,values,0)))
|
||||
values[0]=conf->Set_resolution_according_to;
|
||||
if ((return_code=Save_INI_set_values (Ancien_fichier,Nouveau_fichier,buffer,"Set_resolution_according_to",1,values,0)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
values[0]=Conf->Clear_palette;
|
||||
if ((return_code=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Clear_palette",1,values,1)))
|
||||
values[0]=conf->Clear_palette;
|
||||
if ((return_code=Save_INI_set_values (Ancien_fichier,Nouveau_fichier,buffer,"Clear_palette",1,values,1)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
|
||||
if ((return_code=Sauver_INI_Reach_group(Ancien_fichier,Nouveau_fichier,Buffer,"[MISCELLANEOUS]")))
|
||||
if ((return_code=Save_INI_reach_group(Ancien_fichier,Nouveau_fichier,buffer,"[MISCELLANEOUS]")))
|
||||
goto Erreur_Retour;
|
||||
|
||||
values[0]=Conf->Afficher_limites_image;
|
||||
if ((return_code=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Draw_limits",1,values,1)))
|
||||
values[0]=conf->Display_image_limits;
|
||||
if ((return_code=Save_INI_set_values (Ancien_fichier,Nouveau_fichier,buffer,"Draw_limits",1,values,1)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
values[0]=Conf->Adjust_brush_pick;
|
||||
if ((return_code=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Adjust_brush_pick",1,values,1)))
|
||||
values[0]=conf->Adjust_brush_pick;
|
||||
if ((return_code=Save_INI_set_values (Ancien_fichier,Nouveau_fichier,buffer,"Adjust_brush_pick",1,values,1)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
values[0]=2-Conf->Coords_rel;
|
||||
if ((return_code=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Coordinates",1,values,0)))
|
||||
values[0]=2-conf->Coords_rel;
|
||||
if ((return_code=Save_INI_set_values (Ancien_fichier,Nouveau_fichier,buffer,"Coordinates",1,values,0)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
values[0]=Conf->Backup;
|
||||
if ((return_code=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Backup",1,values,1)))
|
||||
values[0]=conf->Backup;
|
||||
if ((return_code=Save_INI_set_values (Ancien_fichier,Nouveau_fichier,buffer,"Backup",1,values,1)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
values[0]=Conf->Nb_pages_Undo;
|
||||
if ((return_code=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Undo_pages",1,values,0)))
|
||||
values[0]=conf->Max_undo_pages;
|
||||
if ((return_code=Save_INI_set_values (Ancien_fichier,Nouveau_fichier,buffer,"Undo_pages",1,values,0)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
values[0]=Conf->Valeur_tempo_jauge_gauche;
|
||||
if ((return_code=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Gauges_scrolling_speed_Left",1,values,0)))
|
||||
values[0]=conf->Delay_left_click_on_slider;
|
||||
if ((return_code=Save_INI_set_values (Ancien_fichier,Nouveau_fichier,buffer,"Gauges_scrolling_speed_Left",1,values,0)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
values[0]=Conf->Valeur_tempo_jauge_droite;
|
||||
if ((return_code=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Gauges_scrolling_speed_Right",1,values,0)))
|
||||
values[0]=conf->Delay_right_click_on_slider;
|
||||
if ((return_code=Save_INI_set_values (Ancien_fichier,Nouveau_fichier,buffer,"Gauges_scrolling_speed_Right",1,values,0)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
values[0]=Conf->Auto_save;
|
||||
if ((return_code=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Auto_save",1,values,1)))
|
||||
values[0]=conf->Auto_save;
|
||||
if ((return_code=Save_INI_set_values (Ancien_fichier,Nouveau_fichier,buffer,"Auto_save",1,values,1)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
values[0]=Conf->Nb_max_de_vertex_par_polygon;
|
||||
if ((return_code=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Vertices_per_polygon",1,values,0)))
|
||||
values[0]=conf->Nb_max_vertices_per_polygon;
|
||||
if ((return_code=Save_INI_set_values (Ancien_fichier,Nouveau_fichier,buffer,"Vertices_per_polygon",1,values,0)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
values[0]=Conf->Fast_zoom;
|
||||
if ((return_code=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Fast_zoom",1,values,1)))
|
||||
values[0]=conf->Fast_zoom;
|
||||
if ((return_code=Save_INI_set_values (Ancien_fichier,Nouveau_fichier,buffer,"Fast_zoom",1,values,1)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
values[0]=Conf->Couleurs_separees;
|
||||
if ((return_code=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Separate_colors",1,values,1)))
|
||||
values[0]=conf->Couleurs_separees;
|
||||
if ((return_code=Save_INI_set_values (Ancien_fichier,Nouveau_fichier,buffer,"Separate_colors",1,values,1)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
values[0]=Conf->FX_Feedback;
|
||||
if ((return_code=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"FX_feedback",1,values,1)))
|
||||
values[0]=conf->FX_Feedback;
|
||||
if ((return_code=Save_INI_set_values (Ancien_fichier,Nouveau_fichier,buffer,"FX_feedback",1,values,1)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
values[0]=Conf->Safety_colors;
|
||||
if ((return_code=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Safety_colors",1,values,1)))
|
||||
values[0]=conf->Safety_colors;
|
||||
if ((return_code=Save_INI_set_values (Ancien_fichier,Nouveau_fichier,buffer,"Safety_colors",1,values,1)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
values[0]=Conf->Opening_message;
|
||||
if ((return_code=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Opening_message",1,values,1)))
|
||||
values[0]=conf->Opening_message;
|
||||
if ((return_code=Save_INI_set_values (Ancien_fichier,Nouveau_fichier,buffer,"Opening_message",1,values,1)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
values[0]=Conf->Clear_with_stencil;
|
||||
if ((return_code=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Clear_with_stencil",1,values,1)))
|
||||
values[0]=conf->Clear_with_stencil;
|
||||
if ((return_code=Save_INI_set_values (Ancien_fichier,Nouveau_fichier,buffer,"Clear_with_stencil",1,values,1)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
values[0]=Conf->Auto_discontinuous;
|
||||
if ((return_code=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Auto_discontinuous",1,values,1)))
|
||||
values[0]=conf->Auto_discontinuous;
|
||||
if ((return_code=Save_INI_set_values (Ancien_fichier,Nouveau_fichier,buffer,"Auto_discontinuous",1,values,1)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
values[0]=Conf->Taille_ecran_dans_GIF;
|
||||
if ((return_code=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Save_screen_size_in_GIF",1,values,1)))
|
||||
values[0]=conf->Screen_size_in_GIF;
|
||||
if ((return_code=Save_INI_set_values (Ancien_fichier,Nouveau_fichier,buffer,"Save_screen_size_in_GIF",1,values,1)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
values[0]=Conf->Auto_nb_used;
|
||||
if ((return_code=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Auto_nb_colors_used",1,values,1)))
|
||||
values[0]=conf->Auto_nb_used;
|
||||
if ((return_code=Save_INI_set_values (Ancien_fichier,Nouveau_fichier,buffer,"Auto_nb_colors_used",1,values,1)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
if ((return_code=Sauver_INI_Set_strings (Ancien_fichier,Nouveau_fichier,Buffer,"Default_video_mode",Libelle_mode(Conf->Resolution_par_defaut))))
|
||||
if ((return_code=Save_INI_set_strings (Ancien_fichier,Nouveau_fichier,buffer,"Default_video_mode",Mode_label(conf->Default_resolution))))
|
||||
goto Erreur_Retour;
|
||||
|
||||
values[0]=Mode_video[0].Width;
|
||||
values[1]=Mode_video[0].Height;
|
||||
if ((return_code=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Default_window_size",2,values,0)))
|
||||
values[0]=Video_mode[0].Width;
|
||||
values[1]=Video_mode[0].Height;
|
||||
if ((return_code=Save_INI_set_values (Ancien_fichier,Nouveau_fichier,buffer,"Default_window_size",2,values,0)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
values[0]=(Conf->Mouse_Merge_movement);
|
||||
if ((return_code=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Merge_movement",1,values,0)))
|
||||
values[0]=(conf->Mouse_merge_movement);
|
||||
if ((return_code=Save_INI_set_values (Ancien_fichier,Nouveau_fichier,buffer,"Merge_movement",1,values,0)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
values[0]=(Conf->Palette_Cells_X);
|
||||
if ((return_code=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Palette_Cells_X",1,values,0)))
|
||||
values[0]=(conf->Palette_cells_X);
|
||||
if ((return_code=Save_INI_set_values (Ancien_fichier,Nouveau_fichier,buffer,"Palette_cells_X",1,values,0)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
values[0]=(Conf->Palette_Cells_Y);
|
||||
if ((return_code=Sauver_INI_Set_values (Ancien_fichier,Nouveau_fichier,Buffer,"Palette_Cells_Y",1,values,0)))
|
||||
values[0]=(conf->Palette_cells_Y);
|
||||
if ((return_code=Save_INI_set_values (Ancien_fichier,Nouveau_fichier,buffer,"Palette_cells_Y",1,values,0)))
|
||||
goto Erreur_Retour;
|
||||
|
||||
for (Indice=0;Indice<NB_BOOKMARKS;Indice++)
|
||||
for (index=0;index<NB_BOOKMARKS;index++)
|
||||
{
|
||||
if ((return_code=Sauver_INI_Set_strings (Ancien_fichier,Nouveau_fichier,Buffer,"Bookmark_label",Conf->Bookmark_label[Indice])))
|
||||
if ((return_code=Save_INI_set_strings (Ancien_fichier,Nouveau_fichier,buffer,"Bookmark_label",conf->Bookmark_label[index])))
|
||||
goto Erreur_Retour;
|
||||
if ((return_code=Sauver_INI_Set_strings (Ancien_fichier,Nouveau_fichier,Buffer,"Bookmark_directory",Conf->Bookmark_directory[Indice])))
|
||||
if ((return_code=Save_INI_set_strings (Ancien_fichier,Nouveau_fichier,buffer,"Bookmark_directory",conf->Bookmark_directory[index])))
|
||||
goto Erreur_Retour;
|
||||
}
|
||||
|
||||
Sauver_INI_Flush(Ancien_fichier,Nouveau_fichier,Buffer);
|
||||
Save_INI_flush(Ancien_fichier,Nouveau_fichier,buffer);
|
||||
|
||||
fclose(Nouveau_fichier);
|
||||
fclose(Ancien_fichier);
|
||||
|
||||
// On efface le fichier temporaire <=> Ancienne version du .INI
|
||||
if (Ini_existe)
|
||||
remove(Nom_du_fichier_temporaire);
|
||||
free(Buffer);
|
||||
if (ini_file_exists)
|
||||
remove(temp_filename);
|
||||
free(buffer);
|
||||
return 0;
|
||||
|
||||
// Gestion des erreurs:
|
||||
@@ -645,11 +645,11 @@ int Sauver_INI(T_Config * Conf)
|
||||
|
||||
fclose(Nouveau_fichier);
|
||||
fclose(Ancien_fichier);
|
||||
free(Buffer);
|
||||
free(buffer);
|
||||
return return_code;
|
||||
|
||||
Erreur_ERREUR_SAUVEGARDE_INI:
|
||||
|
||||
free(Buffer);
|
||||
return ERREUR_SAUVEGARDE_INI;
|
||||
free(buffer);
|
||||
return ERROR_SAVING_INI;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user