Shuffle code in kbfunc_ssh so that a missing known_hosts file still

allows a (now blank) menu to appear, as opposed to nothing at all.

Behavior reported by Alex Greif.
This commit is contained in:
okan 2015-06-29 14:24:40 +00:00
parent e7b4045ece
commit 9ea5f25347

View File

@ -329,18 +329,17 @@ kbfunc_ssh(struct client_ctx *cc, union arg *arg)
int l;
size_t len;
if ((fp = fopen(Conf.known_hosts, "r")) == NULL) {
warn("kbfunc_ssh: %s", Conf.known_hosts);
return;
}
TAILQ_FOREACH(cmd, &Conf.cmdq, entry) {
if (strcmp(cmd->name, "term") == 0)
break;
}
TAILQ_INIT(&menuq);
if ((fp = fopen(Conf.known_hosts, "r")) == NULL) {
warn("kbfunc_ssh: %s", Conf.known_hosts);
goto menu;
}
lbuf = NULL;
while ((buf = fgetln(fp, &len))) {
if (buf[len - 1] == '\n')
@ -366,7 +365,7 @@ kbfunc_ssh(struct client_ctx *cc, union arg *arg)
}
free(lbuf);
(void)fclose(fp);
menu:
if ((mi = menu_filter(sc, &menuq, "ssh", NULL, CWM_MENU_DUMMY,
search_match_exec, NULL)) != NULL) {
if (mi->text[0] == '\0')