diff options
author | Tim Nieradzik, Jorge Arellano Cid <devnull@localhost> | 2009-04-28 08:32:47 -0400 |
---|---|---|
committer | Tim Nieradzik, Jorge Arellano Cid <devnull@localhost> | 2009-04-28 08:32:47 -0400 |
commit | 25308249920a3f0bf194569193ddf369ff19e480 (patch) | |
tree | e250e306df1031bf532cd154e68ea415431e16c2 /dlib | |
parent | 3b8078f51c75b6d9160688c544db60729df83e90 (diff) |
Refactor the preferences parser
Diffstat (limited to 'dlib')
-rw-r--r-- | dlib/dlib.c | 10 | ||||
-rw-r--r-- | dlib/dlib.h | 2 |
2 files changed, 8 insertions, 4 deletions
diff --git a/dlib/dlib.c b/dlib/dlib.c index 023f869a..9d8cc062 100644 --- a/dlib/dlib.c +++ b/dlib/dlib.c @@ -758,9 +758,10 @@ void *dList_find_sorted (Dlist *lp, const void *data, dCompareFunc func) * - line is modified! * - it skips blank lines and lines starting with '#' * - * Return value: 0 on successful value/pair, -1 otherwise + * Return value: 1 on blank line or comment, 0 on successful value/pair, + * -1 otherwise. */ -int dParser_get_rc_pair(char **line, char **name, char **value) +int dParser_parse_rc_line(char **line, char **name, char **value) { char *eq, *p; int len, ret = -1; @@ -770,7 +771,10 @@ int dParser_get_rc_pair(char **line, char **name, char **value) *name = NULL; *value = NULL; dStrstrip(*line); - if (*line[0] != '#' && (eq = strchr(*line, '='))) { + if (!*line[0] || *line[0] == '#') { + /* blank line or comment */ + ret = 1; + } else if ((eq = strchr(*line, '='))) { /* get name */ for (p = *line; *p && *p != '=' && !isspace(*p); ++p); *p = 0; diff --git a/dlib/dlib.h b/dlib/dlib.h index b1c72293..246f9adb 100644 --- a/dlib/dlib.h +++ b/dlib/dlib.h @@ -158,7 +158,7 @@ void *dList_find_sorted (Dlist *lp, const void *data, dCompareFunc func); /* *- Parse function ------------------------------------------------------------ */ -int dParser_get_rc_pair(char **line, char **name, char **value); +int dParser_parse_rc_line(char **line, char **name, char **value); /* *- Misc utility functions ---------------------------------------------------- |