On Sat 06 Jul 2019 at 23:34:07 -0500, Matthew D. Fuller wrote: > Now, I _can_ cause a crash on leaving the old. I do that by having a > transient up of the focus/fullscreen, _and_ having another window > that's in a + OTP layer (e.g., an xterm in +2), then moving out of the > fullscreener. Great. And with my patch, that... also crashes. In a > new way. Crap.
I *think* I can now recreate the crash on demand.
I am using the latest trunk for that, with indeed a MonitorLayout to
help me create various situations. None of the patches attempting to fix
these bugs.
Beginning state: fullscreen focused Xine window ("F"), and on top of
that, the Xine Panel window ("P"). Below, there are some other windows
(one should be enough but by default I start more). One of them ("W")
partially overlaps with the Panel window.
Now I use the window ring to bring focus to W which comes up partially
on top of P. Now I move the mouse directly into P. (To my surprise, W
did not disappear behind a rising F). I use focus follows mouse. Then
move the mouse directly info F. Kaboom.
Sometimes I notice another weirdness: despite using f.warpring to go to
W, it does not always come to the top as it should (since F isn't
focused any more, it has no reason to stay on top of W). If W doesn't
raise, I force it to the top with a key combo I have set for that (but
whatever other means you may use for that would work as well).
OtpCheckConsistencyVS(): Priority went backward (14:'xine: ' -> 8:'xterm')
OwlPrettyPrint():
pri= 8 (+0) win 0x1a00051:'TWM Icon Manager'
basepri=8
...
pri= 8 (+0) win 0x1000003:'aumix'
basepri=8
pri=14 (+6) win 0x1c0037a:'xine: '
basepri=8 _FULLSCREEN
pri= 8 (+0) win 0x140000d:'xterm'
basepri=8
pri= 8 (+0) win 0x120000d:'xterm'
basepri=8
pri=14 (+6) win 0x1c00301:'xine Panel'
basepri=8 _FULLSCREEN
transient for 0x1c0037a:xine:
Done.
#0 0x000074ba168fe7ea in _lwp_kill () from /usr/lib/libc.so.12
#1 0x000074ba168fe092 in abort () from /usr/lib/libc.so.12
#2 0x0000000000423208 in OtpCheckConsistencyVS (currentvs=<optimized out>,
vroot=<optimized out>) at
/mnt/vol1/rhialto/cvs/other/ctwm/bzr/trunk/otp.c:258
#3 0x00000000004240d3 in OtpCheckConsistency ()
at /mnt/vol1/rhialto/cvs/other/ctwm/bzr/trunk/otp.c:201
#4 OtpRestackWindow (twm_win=twm_win@entry=0x74ba18b40c00)
at /mnt/vol1/rhialto/cvs/other/ctwm/bzr/trunk/otp.c:1626
#5 0x000000000042f705 in SetFocus (tmp_win=0x74ba18b40800, tim=<optimized out>)
at /mnt/vol1/rhialto/cvs/other/ctwm/bzr/trunk/win_ops.c:168
#6 0x00000000004096b0 in HandleEnterNotify ()
at /mnt/vol1/rhialto/cvs/other/ctwm/bzr/trunk/event_handlers.c:3301
#7 0x0000000000408804 in DispatchEvent ()
at /mnt/vol1/rhialto/cvs/other/ctwm/bzr/trunk/event_core.c:331
#8 0x0000000000408aa8 in HandleEvents ()
at /mnt/vol1/rhialto/cvs/other/ctwm/bzr/trunk/event_core.c:203
#9 0x0000000000407eff in ctwm_main (argc=<optimized out>, argv=<optimized out>)
at /mnt/vol1/rhialto/cvs/other/ctwm/bzr/trunk/ctwm_main.c:1055
#10 0x00000000004061ab in ___start ()
An alternative to bringing W to the top, is continuing to warp and if
you directly get to P, then moving the mouse to F also crashes.
OtpCheckConsistencyVS(): Priority went backward (14:'xine: ' -> 8:'xterm')
OwlPrettyPrint():
...
pri= 8 (+0) win 0x160000d:'xterm'
basepri=8
pri=14 (+6) win 0x120039e:'xine: '
basepri=8 _FULLSCREEN
pri= 8 (+0) win 0x140000d:'xterm'
basepri=8
pri=14 (+6) win 0x1200301:'xine Panel'
basepri=8 _FULLSCREEN
transient for 0x120039e:xine:
Done.
Program received signal SIGABRT, Aborted.
-Olaf.
--
___ Olaf 'Rhialto' Seibert -- "What good is a Ring of Power
\X/ rhialto/at/falu.nl -- if you're unable...to Speak." - Agent Elrond
signature.asc
Description: PGP signature
