aboutsummaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
Diffstat (limited to 'lib')
-rw-r--r--lib/parse_ini.c7
-rw-r--r--lib/tests/plugin.ini5
2 files changed, 7 insertions, 5 deletions
diff --git a/lib/parse_ini.c b/lib/parse_ini.c
index 654452d8..57321753 100644
--- a/lib/parse_ini.c
+++ b/lib/parse_ini.c
@@ -132,6 +132,7 @@ static int read_defaults(FILE *f, const char *stanza, np_arg_list **opts){
if(isspace(c)) continue;
switch(c){
/* globble up coment lines */
+ case ';':
case '#':
GOBBLE_TO(f, c, '\n');
break;
@@ -232,10 +233,8 @@ static int add_option(FILE *f, np_arg_list **optlst){
if(optptr==eqptr) die(STATE_UNKNOWN, _("Config file error\n"));
/* continue from '=' to start of value or EOL */
for(valptr=eqptr+1; valptr<lineend && isspace(*valptr); valptr++);
- /* continue to the end of value (FIXME: watching for trailing comments) */
- for(valend=valptr; valend<lineend; valend++)
- /* FIXME: N::P doesn't allow comments here. Remove next line and parse_ini won't either */
- if(*valend=='#') break;
+ /* continue to the end of value */
+ for(valend=valptr; valend<lineend; valend++);
--valend;
/* Finally trim off trailing spaces */
for(valend; isspace(*valend); valend--);
diff --git a/lib/tests/plugin.ini b/lib/tests/plugin.ini
index e22f8bdb..511fd9f6 100644
--- a/lib/tests/plugin.ini
+++ b/lib/tests/plugin.ini
@@ -1,7 +1,10 @@
+# Non-standard (but accepted) comment
+; standard ini comment
[check_mysql]
username=operator
-password=secret # Remember to change later
+; comment in the middle
+password=secret
[section_twice]
foo=bar