🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: gnu.emacs.bug
Article #98641

bug in 18.55 X code

#98641
From: Paul Barton-Davis
Date: Fri, 19 Apr 1991 19:42
50 lines
2416 bytes
Hardware: Sequent Symmetry (X-client)
	  DECstation 3100 (X-server)

Software: Emacs 18.55.nnn
          Dynix 3.0.12
  	  Ultrix 4.1
	  X11.R4 (athena)
	  twm (from athena X11 dist)

Bug description: 

	If emac's window is resized emacs will not update 
	the screen until a key or mouse event occurs.

Bug Trackdown:

	detect_input_pending() uses FIONREAD. After a resize,
	FIONREAD will detect pending input, since the X server
	sends Emacs event notification. This results in
	the global "input_pending" being set to a non-zero
	value. During internal_socket_read(), emacs discovers
	that it needs to redisplay the screen. However, when
	update_screen() checks to see if any input is pending,
	it finds there is, and so skips the update.

	Of course, the "pending input" is just X protocol
	bytes and event notifications, not the "normal"
	input that non-X emacs deal with exclusively.

Possible Bug Fix:

	Use XCheckWindowEvent() and XPutBackEvent() to determine
	if pending events contain those that emacs considers
	"input": KeyPress, ButtonPress, ButtonRelease. If not,
	set input_pending to zero.

	I have tried this, and it appears to work fine. If
	this is a real bug, I'll post it, but I'm sure RMS
	will have something to say about this.

Wierdness:

	Given the above description, this ought to happen
	when the client runs on the DECstation or anything else,
	for that matter. It doesn't. I don't understand this,
	and it means I may well be wrong.

-- 
Paul Barton-Davis			<pauld@cs.washington.edu>
UW Computer Science Lab		``to shatter tradition makes us feel free''
Technical Details
Message-ID: <1991Apr19.194209.14738@beaver.cs.washington.edu>
Path: arc1-ca.pugleaf.net!gmdzi!unido!fauern!ira.uka.de!sol.ctr.columbia.edu!samsung!sdd.hp.com!elroy.jpl.nasa.gov!ncar!gatech!usenet.ins.cwru.edu!tut.cis.ohio-state.edu!unreplyable!garbage

Show Full Headers
Complete Article Headers
X-Google-Language: ENGLISH,ASCII-7-bit
X-Google-Thread: fb2f1,cf1ed749fa4046a9,start
X-Google-Attributes: gidfb2f1,public
X-Google-ArrivalTime: 1991-04-19 17:20:42 PST
Path: arc1-ca.pugleaf.net!gmdzi!unido!fauern!ira.uka.de!sol.ctr.columbia.edu!samsung!sdd.hp.com!elroy.jpl.nasa.gov!ncar!gatech!usenet.ins.cwru.edu!tut.cis.ohio-state.edu!unreplyable!garbage
From: pauld@CS.WASHINGTON.EDU (Paul Barton-Davis)
Newsgroups: gnu.emacs.bug
Subject: bug in 18.55 X code
Message-ID: <1991Apr19.194209.14738@beaver.cs.washington.edu>
Date: 19 Apr 91 19:42:09 GMT
Sender: daemon@tut.cis.ohio-state.edu
Reply-To: pauld@cs.washington.edu (Paul Barton-Davis)
Distribution: gnu
Organization: Computer Science & Engineering, U. of Washington, Seattle
Lines: 50
Approved: bug-gnu-emacs@prep.ai.mit.edu