From 306f4fe480fe578b78d2c83fa7d13bc2a75f7ea9 Mon Sep 17 00:00:00 2001 From: Eric Andersen Date: Wed, 31 Jan 2001 00:30:45 +0000 Subject: If the ioctl fails to tell us the winsize, default to 79. -Erik --- cmdedit.c | 5 ++++- shell/cmdedit.c | 5 ++++- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/cmdedit.c b/cmdedit.c index 9c2facc7b..169032697 100644 --- a/cmdedit.c +++ b/cmdedit.c @@ -136,11 +136,14 @@ static void win_changed(int nsig) struct winsize win = { 0, 0, 0, 0 }; static __sighandler_t previous_SIGWINCH_handler; /* for reset */ - /* emulate signal call if not called as a sig handler */ + /* emulate signal call if not called as a sig handler */ if(nsig == -SIGWINCH || nsig == SIGWINCH) { ioctl(0, TIOCGWINSZ, &win); if (win.ws_col > 0) { cmdedit_setwidth( win.ws_col, nsig == SIGWINCH ); + } else { + /* Default to 79 if their console doesn't want to share */ + cmdedit_setwidth( 79, nsig == SIGWINCH ); } } diff --git a/shell/cmdedit.c b/shell/cmdedit.c index 9c2facc7b..169032697 100644 --- a/shell/cmdedit.c +++ b/shell/cmdedit.c @@ -136,11 +136,14 @@ static void win_changed(int nsig) struct winsize win = { 0, 0, 0, 0 }; static __sighandler_t previous_SIGWINCH_handler; /* for reset */ - /* emulate signal call if not called as a sig handler */ + /* emulate signal call if not called as a sig handler */ if(nsig == -SIGWINCH || nsig == SIGWINCH) { ioctl(0, TIOCGWINSZ, &win); if (win.ws_col > 0) { cmdedit_setwidth( win.ws_col, nsig == SIGWINCH ); + } else { + /* Default to 79 if their console doesn't want to share */ + cmdedit_setwidth( 79, nsig == SIGWINCH ); } } -- cgit v1.2.3