aboutsummaryrefslogtreecommitdiffstats
path: root/cfg.c
diff options
context:
space:
mode:
authorreinelt <reinelt@3ae390bd-cb1e-0410-b409-cd5a39f66f1f>2004-01-08 06:00:28 +0000
committerreinelt <reinelt@3ae390bd-cb1e-0410-b409-cd5a39f66f1f>2004-01-08 06:00:28 +0000
commit1cf54b00c151235704b41d192650a8e75c4ac905 (patch)
tree4ef396f354c947232e971f458fded7f5e6c73151 /cfg.c
parent526f730eeb1a3c2d8ca73fa25f5bec4b39dd4248 (diff)
downloadlcd4linux-1cf54b00c151235704b41d192650a8e75c4ac905.tar.gz
[lcd4linux @ 2004-01-08 06:00:28 by reinelt]
allowed '.' in key names allowed empty group keys (not only "group anything {", but "anything {") git-svn-id: https://ssl.bulix.org/svn/lcd4linux/trunk@297 3ae390bd-cb1e-0410-b409-cd5a39f66f1f
Diffstat (limited to 'cfg.c')
-rw-r--r--cfg.c22
1 files changed, 14 insertions, 8 deletions
diff --git a/cfg.c b/cfg.c
index 892ee97..0940def 100644
--- a/cfg.c
+++ b/cfg.c
@@ -1,4 +1,4 @@
-/* $Id: cfg.c,v 1.21 2004/01/08 05:28:12 reinelt Exp $^
+/* $Id: cfg.c,v 1.22 2004/01/08 06:00:28 reinelt Exp $^
*
* config file stuff
*
@@ -23,6 +23,10 @@
*
*
* $Log: cfg.c,v $
+ * Revision 1.22 2004/01/08 06:00:28 reinelt
+ * allowed '.' in key names
+ * allowed empty group keys (not only "group anything {", but "anything {")
+ *
* Revision 1.21 2004/01/08 05:28:12 reinelt
* Luk Claes added to AUTHORS
* cfg: group handling ('{}') added
@@ -233,8 +237,10 @@ static int validchars (char *string)
char *c;
for (c=string; *c; c++) {
- if ((*c>='A' && *c<='Z') || (*c>='a' && *c<='z') || *c=='_') continue;
- if ((*c>='0' && *c<='9') && (c>string)) continue;
+ // first and following chars
+ if ((*c>='A' && *c<='Z') || (*c>='a' && *c<='z') || (*c=='_')) continue;
+ // only following chars
+ if ((c>string) && ((*c>='0' && *c<='9') || (*c=='.'))) continue;
return 0;
}
return 1;
@@ -488,9 +494,10 @@ static int cfg_read (char *file)
}
if (*group!='\0') strcat (group, ".");
strcat (group, key);
- strcat (group, ":");
- strcat (group, val);
- debug ("Michi: group-open=<%s>", group);
+ if (*val!='\0') {
+ strcat (group, ":");
+ strcat (group, val);
+ }
continue;
}
@@ -508,12 +515,11 @@ static int cfg_read (char *file)
*group='\0';
else
*end='\0';
- debug ("Michi: group-close1=<%s>", group);
continue;
}
// finally: add key
- debug ("Michi: add key=<%s> val=<%s>", key, val);
+ debug ("Michi: add group=<%s> key=<%s> val=<%s>", group, key, val);
cfg_add (group, key, val, 0);
}