diff options
| -rw-r--r-- | lib/parse_ini.c | 15 |
1 files changed, 7 insertions, 8 deletions
diff --git a/lib/parse_ini.c b/lib/parse_ini.c index a5b3d306..b33ce089 100644 --- a/lib/parse_ini.c +++ b/lib/parse_ini.c | |||
| @@ -166,7 +166,7 @@ read_defaults(FILE *f, const char *stanza, np_arg_list **opts) | |||
| 166 | c = fgetc(f); | 166 | c = fgetc(f); |
| 167 | /* Strip leading whitespace */ | 167 | /* Strip leading whitespace */ |
| 168 | if (i == 0) | 168 | if (i == 0) |
| 169 | for (c; isspace(c); c = fgetc(f)) | 169 | for (; isspace(c); c = fgetc(f)) |
| 170 | continue; | 170 | continue; |
| 171 | /* nope, read to the end of the line */ | 171 | /* nope, read to the end of the line */ |
| 172 | if (c != stanza[i]) { | 172 | if (c != stanza[i]) { |
| @@ -178,7 +178,7 @@ read_defaults(FILE *f, const char *stanza, np_arg_list **opts) | |||
| 178 | if (i == stanza_len) { | 178 | if (i == stanza_len) { |
| 179 | c = fgetc(f); | 179 | c = fgetc(f); |
| 180 | /* Strip trailing whitespace */ | 180 | /* Strip trailing whitespace */ |
| 181 | for (c; isspace(c); c = fgetc(f)) | 181 | for (; isspace(c); c = fgetc(f)) |
| 182 | continue; | 182 | continue; |
| 183 | if (c == ']') | 183 | if (c == ']') |
| 184 | stanzastate = RIGHTSTANZA; | 184 | stanzastate = RIGHTSTANZA; |
| @@ -193,7 +193,6 @@ read_defaults(FILE *f, const char *stanza, np_arg_list **opts) | |||
| 193 | case NOSTANZA: | 193 | case NOSTANZA: |
| 194 | die(STATE_UNKNOWN, "%s\n", | 194 | die(STATE_UNKNOWN, "%s\n", |
| 195 | _("Config file error")); | 195 | _("Config file error")); |
| 196 | break; | ||
| 197 | /* we're in a stanza, but for a different plugin */ | 196 | /* we're in a stanza, but for a different plugin */ |
| 198 | case WRONGSTANZA: | 197 | case WRONGSTANZA: |
| 199 | GOBBLE_TO(f, c, '\n'); | 198 | GOBBLE_TO(f, c, '\n'); |
| @@ -226,7 +225,7 @@ add_option(FILE *f, np_arg_list **optlst) | |||
| 226 | { | 225 | { |
| 227 | np_arg_list *opttmp = *optlst, *optnew; | 226 | np_arg_list *opttmp = *optlst, *optnew; |
| 228 | char *linebuf = NULL, *lineend = NULL, *optptr = NULL, *optend = NULL; | 227 | char *linebuf = NULL, *lineend = NULL, *optptr = NULL, *optend = NULL; |
| 229 | char *eqptr = NULL, *valptr = NULL, *spaceptr = NULL, *valend = NULL; | 228 | char *eqptr = NULL, *valptr = NULL, *valend = NULL; |
| 230 | short done_reading = 0, equals = 0, value = 0; | 229 | short done_reading = 0, equals = 0, value = 0; |
| 231 | size_t cfg_len = 0, read_sz = 8, linebuf_sz = 0, read_pos = 0; | 230 | size_t cfg_len = 0, read_sz = 8, linebuf_sz = 0, read_pos = 0; |
| 232 | size_t opt_len = 0, val_len = 0; | 231 | size_t opt_len = 0, val_len = 0; |
| @@ -240,7 +239,7 @@ add_option(FILE *f, np_arg_list **optlst) | |||
| 240 | if (linebuf == NULL) | 239 | if (linebuf == NULL) |
| 241 | die(STATE_UNKNOWN, _("malloc() failed!\n")); | 240 | die(STATE_UNKNOWN, _("malloc() failed!\n")); |
| 242 | } | 241 | } |
| 243 | if (fgets(&linebuf[read_pos], read_sz, f) == NULL) | 242 | if (fgets(&linebuf[read_pos], (int)read_sz, f) == NULL) |
| 244 | done_reading = 1; | 243 | done_reading = 1; |
| 245 | else { | 244 | else { |
| 246 | read_pos = strlen(linebuf); | 245 | read_pos = strlen(linebuf); |
| @@ -278,10 +277,10 @@ add_option(FILE *f, np_arg_list **optlst) | |||
| 278 | continue; | 277 | continue; |
| 279 | --valend; | 278 | --valend; |
| 280 | /* Finally trim off trailing spaces */ | 279 | /* Finally trim off trailing spaces */ |
| 281 | for (valend; isspace(*valend); valend--) | 280 | for (; isspace(*valend); valend--) |
| 282 | continue; | 281 | continue; |
| 283 | /* calculate the length of "--foo" */ | 282 | /* calculate the length of "--foo" */ |
| 284 | opt_len = 1 + optend - optptr; | 283 | opt_len = (size_t)(1 + optend - optptr); |
| 285 | /* 1-character params needs only one dash */ | 284 | /* 1-character params needs only one dash */ |
| 286 | if (opt_len == 1) | 285 | if (opt_len == 1) |
| 287 | cfg_len = 1 + (opt_len); | 286 | cfg_len = 1 + (opt_len); |
| @@ -290,7 +289,7 @@ add_option(FILE *f, np_arg_list **optlst) | |||
| 290 | /* if valptr<lineend then we have to also allocate space for "=bar" */ | 289 | /* if valptr<lineend then we have to also allocate space for "=bar" */ |
| 291 | if (valptr < lineend) { | 290 | if (valptr < lineend) { |
| 292 | equals = value = 1; | 291 | equals = value = 1; |
| 293 | val_len = 1 + valend - valptr; | 292 | val_len = (size_t)(1 + valend - valptr); |
| 294 | cfg_len += 1 + val_len; | 293 | cfg_len += 1 + val_len; |
| 295 | } | 294 | } |
| 296 | /* if valptr==valend then we have "=" but no "bar" */ | 295 | /* if valptr==valend then we have "=" but no "bar" */ |
