static void stack (struct var_list **, unsigned int *, unsigned int, void *, enum var_type);
static void release (struct var_list *, unsigned int, void **);
-extern int optind;
-
int
main (int argc, char **argv)
{
print_version (); \
exit (EXIT_SUCCESS);
-extern char *optarg;
-
static void
process_opts (int argc, char **argv, char **conf_file)
{
perror ("getpwuid");
exit (EXIT_FAILURE);
}
+ /* getpwuid() leaks memory */
size = strlen (passwd->pw_dir) + 1 + strlen (CONF_FILE) + 1;
path = xmalloc (size);
snprintf (path, size, "%s/%s", passwd->pw_dir, CONF_FILE);
const char *code = entry->code;
if (code)
printf ("\t\t{\033[%s#\033[0m} [%c%c]%s%*s%s\n",
- code, toupper (*name), *name, name + 1, 10 - (int)strlen (name), " ", name);
+ code, toupper ((unsigned char)*name), *name, name + 1, 10 - (int)strlen (name), " ", name);
else
printf ("\t\t{-} %s%*s%s\n", name, 13 - (int)strlen (name), " ", name);
}
STACK_VAR (color_names[index]->orig);
for (ch = color; *ch; ch++)
- *ch = tolower (*ch);
+ *ch = tolower ((unsigned char)*ch);
color_names[index]->name = xstrdup (color);
STACK_VAR (color_names[index]->name);
assert (strlen (str) > 0);
assert (strlen (name) > 0);
- if (!(*str == *name || *str == toupper (*name)))
+ if (!(*str == *name || *str == toupper ((unsigned char)*name)))
return false;
else if (*(name + 1) != '\0'
&& !((p = strstr (str + 1, name + 1)) && p == str + 1))