NetBSD Problem Report #25849

Received: (qmail 5601 invoked by uid 605); 6 Jun 2004 22:27:24 -0000
Message-Id: <E1BX66s-0004fS-Jr@absd.org>
Date: Sun, 06 Jun 2004 23:27:22 +0100
From: abs@netbsd.org
Sender: gnats-bugs-owner@NetBSD.org
Reply-To: abs@netbsd.org
To: gnats-bugs@gnats.NetBSD.org
Subject: rapid resize can crash vi
X-Send-Pr-Version: 3.95

>Number:         25849
>Category:       bin
>Synopsis:       rapid resize can crash vi
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    aymeric
>State:          closed
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Sun Jun 06 22:28:00 +0000 2004
>Closed-Date:    Mon Jun 21 14:36:11 +0000 2004
>Last-Modified:  Mon Jun 21 14:36:11 +0000 2004
>Originator:     David Brownlee
>Release:        NetBSD 2.0_BETA
>Organization:

>Environment:


System: NetBSD forsaken 2.0_BETA NetBSD 2.0_BETA (_FORSAKEN_) #0: Mon May 24 17:20:28 BST 2004 abs@forsaken:/var/obj/i386/files/netbsd/2.0/sys/arch/i386/compile/_FORSAKEN_ i386
Architecture: i386
Machine: i386
>Description:
	When resizing an xterm some window managers (xfce4 being an example) will
	send a resize update for every line or column changed. If vi is bring run
	in such a situation there is a high likelyhood it will abruptly exit with
	"ex/vi: error initializing terminal", losing any changes made.

>How-To-Repeat:
	Install xfce4, run vi in xterm, open file /etc/defaults/rc.conf, resize
	window. Just increasing the number of rows can trigger this.
>Fix:

>Release-Note:
>Audit-Trail:

From: Aymeric Vincent <aymeric@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc:  
Subject: pr/25849 CVS commit: src/usr.bin/vi/cl
Date: Sun, 13 Jun 2004 10:15:55 +0000 (UTC)

 Module Name:	src
 Committed By:	aymeric
 Date:		Sun Jun 13 10:15:55 UTC 2004

 Modified Files:
 	src/usr.bin/vi/cl: cl_screen.c

 Log Message:
 . don't call newterm() more than once; use setterm() and resizeterm() instead
   on subsequent calls. Newterm() would fail after a few calls, leading to vi
   exiting with a "ex/vi: error initializing terminal" message
 . if tcsetattr() fails due to EINTR, ignore it

 Fixes PR #25849


 To generate a diff of this commit:
 cvs rdiff -r1.6 -r1.7 src/usr.bin/vi/cl/cl_screen.c

 Please note that diffs are not public domain; they are subject to the
 copyright notices on the relevant files.

Responsible-Changed-From-To: bin-bug-people->aymeric 
Responsible-Changed-By: aymeric 
Responsible-Changed-When: Sun Jun 13 10:20:41 UTC 2004 
Responsible-Changed-Why:  
I'm responsible for vi 
State-Changed-From-To: open->feedback 
State-Changed-By: aymeric 
State-Changed-When: Sun Jun 13 10:23:31 UTC 2004 
State-Changed-Why:  
mail sent to abs@ 

From: Matthias Scheler <tron@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc:  
Subject: pr/25849 CVS commit: [netbsd-1-6] src/usr.bin/vi/cl
Date: Mon, 14 Jun 2004 17:03:36 +0000 (UTC)

 Module Name:	src
 Committed By:	tron
 Date:		Mon Jun 14 17:03:36 UTC 2004

 Modified Files:
 	src/usr.bin/vi/cl [netbsd-1-6]: cl_screen.c

 Log Message:
 Pull up revision 1.7 (requested by aymeric in ticket #1713):
 . don't call newterm() more than once; use setterm() and resizeterm() instead
   on subsequent calls. Newterm() would fail after a few calls, leading to vi
   exiting with a "ex/vi: error initializing terminal" message
 . if tcsetattr() fails due to EINTR, ignore it
 Fixes PR #25849


 To generate a diff of this commit:
 cvs rdiff -r1.6 -r1.6.2.1 src/usr.bin/vi/cl/cl_screen.c

 Please note that diffs are not public domain; they are subject to the
 copyright notices on the relevant files.


From: Matthias Scheler <tron@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc:  
Subject: pr/25849 CVS commit: [netbsd-2-0] src/usr.bin/vi/cl
Date: Mon, 14 Jun 2004 20:23:10 +0000 (UTC)

 Module Name:	src
 Committed By:	tron
 Date:		Mon Jun 14 20:23:10 UTC 2004

 Modified Files:
 	src/usr.bin/vi/cl [netbsd-2-0]: cl_screen.c

 Log Message:
 Pull up revision 1.7 (requested by aymeric in ticket #496):
 . don't call newterm() more than once; use setterm() and resizeterm() instead
   on subsequent calls. Newterm() would fail after a few calls, leading to vi
   exiting with a "ex/vi: error initializing terminal" message
 . if tcsetattr() fails due to EINTR, ignore it
 Fixes PR #25849


 To generate a diff of this commit:
 cvs rdiff -r1.6 -r1.6.4.1 src/usr.bin/vi/cl/cl_screen.c

 Please note that diffs are not public domain; they are subject to the
 copyright notices on the relevant files.

State-Changed-From-To: feedback->open 
State-Changed-By: abs 
State-Changed-When: Sun Jun 20 11:54:16 UTC 2004 
State-Changed-Why:  
I can no longer reproduce the problem under 2.0. Looks fixed to me :) 
State-Changed-From-To: open->closed 
State-Changed-By: abs 
State-Changed-When: Mon Jun 21 14:36:01 UTC 2004 
State-Changed-Why:  
Looks to be fixed :) 
>Unformatted:

NetBSD Home
NetBSD PR Database Search

(Contact us) $NetBSD: query-full-pr,v 1.39 2013/11/01 18:47:49 spz Exp $
$NetBSD: gnats_config.sh,v 1.8 2006/05/07 09:23:38 tsutsui Exp $
Copyright © 1994-2007 The NetBSD Foundation, Inc. ALL RIGHTS RESERVED.