From 63306d0ad552592fda2d6dbe0f3fe138b9ba5c3b Mon Sep 17 00:00:00 2001 From: Ben Gras Date: Tue, 11 Jun 2013 14:30:31 +0000 Subject: [PATCH] init: handle getty string of "" (default) . the default entry for disabled ttys for getty in /etc/ttys is "", but init crashed on handling that string. Change-Id: Ib7cd6c6869e338f47df0aa5abed36f15eda4f6ff --- servers/init/init.c | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/servers/init/init.c b/servers/init/init.c index 4fc9bec45..abfe038d3 100644 --- a/servers/init/init.c +++ b/servers/init/init.c @@ -263,15 +263,16 @@ void startup(int linenr, struct ttyent *ttyp) /* Construct argv for execute() */ ty_getty_argv = construct_argv(ttyp->ty_getty); - if (ty_getty_argv == NULL) + if (ty_getty_argv == NULL) { report(2, "construct_argv"); - - /* Execute the getty process. */ - execute(ty_getty_argv); + } else { + /* Execute the getty process. */ + execute(ty_getty_argv); + } /* Oops, disaster strikes. */ fcntl(2, F_SETFL, fcntl(2, F_GETFL) | O_NONBLOCK); - if (linenr != 0) report(2, ty_getty_argv[0]); + if (linenr != 0 && ty_getty_argv) report(2, ty_getty_argv[0]); write(err[1], &errno, sizeof(errno)); _exit(1); } -- 2.44.0