run_wgetrc (const char *file)
{
FILE *fp;
- char *line;
+ char *line = NULL;
+ size_t bufsize = 0;
int ln;
int errcnt = 0;
return true; /* not a fatal error */
}
ln = 1;
- while ((line = read_whole_line (fp)) != NULL)
+ while (getline (&line, &bufsize, fp) > 0)
{
char *com = NULL, *val = NULL;
int comind;
}
xfree_null (com);
xfree_null (val);
- xfree (line);
++ln;
}
+ xfree (line);
fclose (fp);
return errcnt == 0;
static bool
cmd_string_uppercase (const char *com, const char *val, void *place)
{
- char *q;
- bool ret = cmd_string (com, val, place);
- q = *((char **) place);
- if (!ret || q == NULL)
- return false;
+ char *q, **pstring;
+ pstring = (char **)place;
+ xfree_null (*pstring);
+
+ *pstring = xmalloc (strlen (val) + 1);
- while (*q)
- *q++ = c_toupper (*q);
+ for (q = *pstring; *val; val++, q++)
+ *q = c_toupper (*val);
+ *q = '\0';
return true;
}