From: hasso Date: Wed, 20 Oct 2004 19:07:48 +0000 (+0000) Subject: Don't popen pager if command is "exit". Fixes "vtysh screws up my terminal X-Git-Tag: frr-2.0-rc1~3453 X-Git-Url: https://git.puffer.fish/?a=commitdiff_plain;h=97b7db2d02863c718c53faf02d13a92260035ea8;p=matthieu%2Ffrr.git Don't popen pager if command is "exit". Fixes "vtysh screws up my terminal if I exit" issue. --- diff --git a/vtysh/ChangeLog b/vtysh/ChangeLog index 33f6d1246a..b6a2eeaa62 100644 --- a/vtysh/ChangeLog +++ b/vtysh/ChangeLog @@ -1,3 +1,8 @@ +2004-10-20 Hasso Tepper + + * vtysh.c: Don't popen pager if command is "exit". Fixes "vtysh screws + up my terminal if I exit" issue. + 2004-10-13 Hasso Tepper * extract.pl.in: All daemons can use both IPv6 and IPv4 access lists diff --git a/vtysh/vtysh.c b/vtysh/vtysh.c index 086b5dfe5f..cea91b3e86 100644 --- a/vtysh/vtysh.c +++ b/vtysh/vtysh.c @@ -283,7 +283,10 @@ vtysh_execute_func (const char *line, int pager) break; case CMD_SUCCESS_DAEMON: { - if (pager && vtysh_pager_name) + /* FIXME: Don't open pager for exit commands. popen() causes problems + * if exited from vtysh at all. This hack shouldn't cause any problem + * but is really ugly. */ + if (pager && vtysh_pager_name && (strncmp(line, "exit", 4) != 0)) { fp = popen (vtysh_pager_name, "w"); if (fp == NULL)