rendered paste bodydiff --git a/src/config.c b/src/config.c
index c162fde..bf0af34 100644
--- a/src/config.c
+++ b/src/config.c
@@ -68,7 +68,7 @@ getSectionName (void)
}
static IniDictionary*
-getConfigFile (void)
+getConfigFile (Bool createIfEmpty)
{
char *fileName;
IniDictionary *iniFile;
@@ -78,6 +78,16 @@ getConfigFile (void)
if (!fileName)
return NULL;
+ if (!createIfEmpty)
+ {
+ FILE *fp;
+
+ fp = fopen (fileName, "r");
+ if (!fp)
+ return NULL;
+ fclose (fp);
+ }
+
iniFile = ccsIniOpen (fileName);
free (fileName);
@@ -147,6 +157,7 @@ ccsReadGlobalConfig (ConfigOption option,
*value = NULL;
section = getSectionName();
+ printf("reading from global section %s\n", section);
ret = ccsIniGetString (iniFile, section, entry, value);
free (section);
ccsIniClose (iniFile);
@@ -164,7 +175,8 @@ ccsReadConfig (ConfigOption option,
char *section;
Bool ret;
- iniFile = getConfigFile();
+ iniFile = getConfigFile (FALSE);
+ printf("opening local config returned %p\n", iniFile);
if (!iniFile)
return ccsReadGlobalConfig (option, value);
@@ -191,6 +203,7 @@ ccsReadConfig (ConfigOption option,
*value = NULL;
section = getSectionName();
+ printf("reading local section %s\n", section);
ret = ccsIniGetString (iniFile, section, entry, value);
free (section);
ccsIniClose (iniFile);
@@ -215,7 +228,7 @@ ccsWriteConfig (ConfigOption option,
if (ccsReadConfig (option, &curVal) && strcmp (value, curVal) == 0)
return TRUE;
- iniFile = getConfigFile();
+ iniFile = getConfigFile (TRUE);
if (!iniFile)
return FALSE;
@@ -241,6 +254,7 @@ ccsWriteConfig (ConfigOption option,
}
section = getSectionName();
+ printf("writing %s to entry %s in section %s of local file\n", value, entry, section);
ccsIniSetString (iniFile, section, entry, value);
free (section);