improvements in Load_INI()
This commit is contained in:
		
							parent
							
								
									002512cc5b
								
							
						
					
					
						commit
						eafa5b913c
					
				@ -38,6 +38,8 @@
 | 
				
			|||||||
#include "realpath.h"
 | 
					#include "realpath.h"
 | 
				
			||||||
#include "io.h"
 | 
					#include "io.h"
 | 
				
			||||||
#include "windows.h"
 | 
					#include "windows.h"
 | 
				
			||||||
 | 
					#include "gfx2log.h"
 | 
				
			||||||
 | 
					#include "gfx2mem.h"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/**
 | 
					/**
 | 
				
			||||||
@ -501,30 +503,27 @@ int Load_INI(T_Config * conf)
 | 
				
			|||||||
  conf->Stylus_mode = 0;
 | 
					  conf->Stylus_mode = 0;
 | 
				
			||||||
#endif
 | 
					#endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  // allocate buffer
 | 
				
			||||||
 | 
					  buffer = (char *)GFX2_malloc(1024);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  // On alloue les zones de mémoire:
 | 
					  filename = Filepath_append_to_dir(Config_directory, INI_FILENAME);
 | 
				
			||||||
  buffer=(char *)malloc(1024);
 | 
					  file = fopen(filename, "r");
 | 
				
			||||||
  filename=(char *)malloc(256);
 | 
					  if (file == NULL)
 | 
				
			||||||
 | 
					 | 
				
			||||||
  // On calcule le nom du fichier qu'on manipule:
 | 
					 | 
				
			||||||
  strcpy(filename,Config_directory);
 | 
					 | 
				
			||||||
  strcat(filename,INI_FILENAME);
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  file=fopen(filename,"r");
 | 
					 | 
				
			||||||
  if (file==0)
 | 
					 | 
				
			||||||
  {
 | 
					  {
 | 
				
			||||||
 | 
					    free(filename);
 | 
				
			||||||
    // Si le fichier ini est absent on le relit depuis gfx2def.ini
 | 
					    // Si le fichier ini est absent on le relit depuis gfx2def.ini
 | 
				
			||||||
    strcpy(filename,Data_directory);
 | 
					    filename = Filepath_append_to_dir(Data_directory, INIDEF_FILENAME);
 | 
				
			||||||
    strcat(filename,INIDEF_FILENAME);
 | 
					    file = fopen(filename, "r");
 | 
				
			||||||
    file=fopen(filename,"r");
 | 
					    if (file == NULL)
 | 
				
			||||||
    if (file == 0)
 | 
					 | 
				
			||||||
    {
 | 
					    {
 | 
				
			||||||
 | 
					      GFX2_Log(GFX2_ERROR, "Load_INI() cannot open %s\n", filename);
 | 
				
			||||||
      free(filename);
 | 
					      free(filename);
 | 
				
			||||||
      free(buffer);
 | 
					      free(buffer);
 | 
				
			||||||
      return ERROR_INI_MISSING;
 | 
					      return ERROR_INI_MISSING;
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
  GFX2_Log(GFX2_DEBUG, "Load_INI() loading %s\n", filename);
 | 
					  GFX2_Log(GFX2_DEBUG, "Load_INI() loading %s\n", filename);
 | 
				
			||||||
 | 
					  free(filename);
 | 
				
			||||||
  
 | 
					  
 | 
				
			||||||
  if ((return_code=Load_INI_reach_group(file,buffer,"[MOUSE]")))
 | 
					  if ((return_code=Load_INI_reach_group(file,buffer,"[MOUSE]")))
 | 
				
			||||||
    goto Erreur_Retour;
 | 
					    goto Erreur_Retour;
 | 
				
			||||||
@ -1062,7 +1061,6 @@ int Load_INI(T_Config * conf)
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
  fclose(file);
 | 
					  fclose(file);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  free(filename);
 | 
					 | 
				
			||||||
  free(buffer);
 | 
					  free(buffer);
 | 
				
			||||||
  return 0;
 | 
					  return 0;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@ -1070,14 +1068,12 @@ int Load_INI(T_Config * conf)
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
  Erreur_Retour:
 | 
					  Erreur_Retour:
 | 
				
			||||||
    fclose(file);
 | 
					    fclose(file);
 | 
				
			||||||
    free(filename);
 | 
					 | 
				
			||||||
    free(buffer);
 | 
					    free(buffer);
 | 
				
			||||||
    return return_code;
 | 
					    return return_code;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  Erreur_ERREUR_INI_CORROMPU:
 | 
					  Erreur_ERREUR_INI_CORROMPU:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    fclose(file);
 | 
					    fclose(file);
 | 
				
			||||||
    free(filename);
 | 
					 | 
				
			||||||
    free(buffer);
 | 
					    free(buffer);
 | 
				
			||||||
    return ERROR_INI_CORRUPTED;
 | 
					    return ERROR_INI_CORRUPTED;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user