inpcom.c, rewrite `inp_fix_param_values()'
This commit is contained in:
parent
3b3a808213
commit
e4a28bc1c3
|
|
@ -3340,26 +3340,22 @@ inp_fix_param_values(struct line *c)
|
||||||
static char*
|
static char*
|
||||||
get_param_name(char *line)
|
get_param_name(char *line)
|
||||||
{
|
{
|
||||||
char *name = NULL, *equal_ptr, *beg;
|
char *beg;
|
||||||
char keep;
|
char *equal_ptr = strchr(line, '=');
|
||||||
|
|
||||||
if ((equal_ptr = strchr(line, '=')) != NULL) {
|
if (!equal_ptr) {
|
||||||
equal_ptr = skip_back_ws(equal_ptr);
|
|
||||||
|
|
||||||
beg = equal_ptr - 1;
|
|
||||||
while (!isspace(*beg) && beg != line)
|
|
||||||
beg--;
|
|
||||||
if (beg != line)
|
|
||||||
beg++;
|
|
||||||
keep = *equal_ptr;
|
|
||||||
*equal_ptr = '\0';
|
|
||||||
name = strdup(beg);
|
|
||||||
*equal_ptr = keep;
|
|
||||||
} else {
|
|
||||||
fprintf(stderr, "ERROR: could not find '=' on parameter line '%s'!\n", line);
|
fprintf(stderr, "ERROR: could not find '=' on parameter line '%s'!\n", line);
|
||||||
controlled_exit(EXIT_FAILURE);
|
controlled_exit(EXIT_FAILURE);
|
||||||
|
return NULL;
|
||||||
}
|
}
|
||||||
return name;
|
|
||||||
|
equal_ptr = skip_back_ws(equal_ptr);
|
||||||
|
|
||||||
|
beg = equal_ptr;
|
||||||
|
while (beg > line && !isspace(beg[-1]))
|
||||||
|
beg--;
|
||||||
|
|
||||||
|
return copy_substring(beg, equal_ptr);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue