login: execl() requires a path, not a file name
diff --git a/toys/other/login.c b/toys/other/login.c
index c44a887..c727bf9 100644
--- a/toys/other/login.c
+++ b/toys/other/login.c
@@ -160,8 +160,8 @@
ttyname(tty), hh ? "from" : "", hh ? TT.hostname : "");
// can't xexec here because name doesn't match argv[0]
- snprintf(toybuf, sizeof(toybuf)-1, "-%s", ss = basename_r(pwd->pw_shell));
+ snprintf(toybuf, sizeof(toybuf)-1, "-%s", basename_r(pwd->pw_shell));
toy_exec((char *[]){toybuf, 0});
- execl(ss, toybuf, NULL);
+ execl(pwd->pw_shell, toybuf, NULL);
error_exit("Failed to spawn shell");
}