Sync OpenBSD patchset 559:

Use home from struct passwd if HOME is empty as well as if it is NULL, and fix
a style nit. Both from Tiago Cunha.
pull/1/head
Tiago Cunha 2009-11-22 00:13:34 +00:00
parent 1527ed0ff8
commit 1a41a3b48f
2 changed files with 4 additions and 5 deletions

View File

@ -1,4 +1,4 @@
/* $Id: cmd-string.c,v 1.26 2009-11-18 01:24:33 tcunha Exp $ */
/* $Id: cmd-string.c,v 1.27 2009-11-22 00:13:34 tcunha Exp $ */
/*
* Copyright (c) 2008 Nicholas Marriott <nicm@users.sourceforge.net>
@ -332,7 +332,7 @@ cmd_string_expand_tilde(const char *s, size_t *p)
home = NULL;
if (cmd_string_getc(s, p) == '/') {
if ((home = getenv("HOME")) == NULL) {
if ((home = getenv("HOME")) == NULL || *home == '\0') {
if ((pw = getpwuid(getuid())) != NULL)
home = pw->pw_dir;
}

5
cmd.c
View File

@ -1,4 +1,4 @@
/* $Id: cmd.c,v 1.131 2009-11-19 22:20:04 tcunha Exp $ */
/* $Id: cmd.c,v 1.132 2009-11-22 00:13:34 tcunha Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@ -277,9 +277,8 @@ cmd_free(struct cmd *cmd)
size_t
cmd_print(struct cmd *cmd, char *buf, size_t len)
{
if (cmd->entry->print == NULL) {
if (cmd->entry->print == NULL)
return (xsnprintf(buf, len, "%s", cmd->entry->name));
}
return (cmd->entry->print(cmd, buf, len));
}