[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [STUMP] Stumpwm Crashes when disconnecting monitor via xrandr.
From: |
David Bjergaard |
Subject: |
Re: [STUMP] Stumpwm Crashes when disconnecting monitor via xrandr. |
Date: |
Tue, 22 Jul 2014 16:46:54 -0400 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/24.3 (gnu/linux) |
Hi All,
This long standing bug was just squashed by jorams on github!
https://github.com/stumpwm/stumpwm/pull/105
Thanks so much for everyone who contributed information to squashing
this annoying bug.
Dave
Eric Abrahamsen <address@hidden> writes:
> David Bjergaard <address@hidden> writes:
>
>> Can someone summarize the state of this bug? I have very little time to
>> dig into this, and I have no way of reproducing it on my machines. I
>> know that there was some references to previous patches to address
>> this. That would at least localize this bug to some region of the code.
>
> It's this commit:
>
> https://github.com/stumpwm/stumpwm/commit/8a59c96f340351559f87a39685268e8c15a98e0e
>
> The bit at the top, lines 118 to 120. There was something funny about
> the :key argument of the call to `sort'. I think the reason no one could
> figure it out was that it didn't make much sense that providing a more
> complex key to the sort would cause a crash. Yet it did. Or perhaps I've
> gotten it backwards; at any rate this is the commit, and this is the
> code section that causes the problem.
>
>>
>> Dave
>>
>> Eric Abrahamsen <address@hidden> writes:
>>
>>> Ernesto Alfonso <address@hidden> writes:
>>>
>>>> After I physically remove my external monitor, I run an xrandr
>>>> command to logically disconnect it. When doing this, and there are
>>>> frames in the disconnected screen/monitor, stumpwm crashes with an
>>>> "unhandled error",
>>>
>>> Yup, this is a known bug, you could subscribe to this report if you
>>> like:
>>>
>>> https://github.com/stumpwm/stumpwm/issues/71
>>>
>>>> The xrandr command consists of something like the following:
>>>>
>>>> xrandr --output VGA1 --off
>>>>
>>>> The error backtrace is copied below. (Also, the
>>>> "copy-unhandled-error" does not work for me. I had to run the below
>>>> command via swank)
>>>
>>> I've noticed the same thing -- copy-unhandled-error doesn't seem to do
>>> anything. Perhaps a new bug report...
>>>
>>>> (format nil "~a~%~a" (first *last-unhandled-error*) (second
>>>> *last-unhandled-error*))
>>>> "The value NIL is not of type FRAME.
>>>> 0: (SB-DEBUG::MAP-BACKTRACE
>>>> #<CLOSURE (LAMBDA # :IN SB-DEBUG:BACKTRACE) {100607126B}>
>>>> :START
>>>> 0
>>>> :COUNT
>>>> 100)
>>>> 1: (SB-DEBUG:BACKTRACE 100 #<SB-IMPL::STRING-OUTPUT-STREAM
>>>> {1006071163}>)
>>>> 2: (STUMPWM::BACKTRACE-STRING)
>>>> 3: (STUMPWM::PERFORM-TOP-LEVEL-ERROR-ACTION
>>>> #<TYPE-ERROR expected-type: STUMPWM::FRAME datum: NIL>)
>>>> 4: (SIGNAL #<TYPE-ERROR expected-type: STUMPWM::FRAME datum: NIL>)
>>>> 5: (ERROR TYPE-ERROR :DATUM NIL :EXPECTED-TYPE STUMPWM::FRAME)
>>>> 6: (SB-KERNEL::OBJECT-NOT-TYPE-ERROR-HANDLER
>>>> #<unavailable argument>
>>>> #.(SB-SYS:INT-SAP #X7FFFF6EBED80)
>>>> #<SB-ALIEN-INTERNALS:ALIEN-VALUE :SAP #X7FFFF6EBE8C0 :TYPE (*
>>>>
>>>> (SB-ALIEN:STRUCT
>>>>
>>>> SB-VM::OS-CONTEXT-T-STRUCT))>
>>>> (149 21))
>>>> 7: (SB-KERNEL:INTERNAL-ERROR
>>>> #.(SB-SYS:INT-SAP #X7FFFF6EBE8C0)
>>>> #<unavailable argument>)
>>>> 8: (\"foreign function: call_into_lisp\")
>>>> 9: (\"foreign function: funcall2\")
>>>> 10: (\"foreign function: interrupt_internal_error\")
>>>> 11: (\"foreign function: #x41357B\")
>>>> 12: ((SB-PCL::FAST-METHOD STUMPWM::GROUP-CURRENT-WINDOW
>>>> (STUMPWM::TILE-GROUP))
>>>> #<unavailable argument>
>>>> #<unavailable argument>
>>>> #<STUMPWM::TILE-GROUP {1003D44AF3}>)
>>>> 13: (STUMPWM::HIDE-WINDOW #S(TILE-WINDOW \"ROXTerm\" #x600003))
>>>> 14: ((SB-PCL::FAST-METHOD STUMPWM::GROUP-REMOVE-HEAD
>>>> (STUMPWM::TILE-GROUP T))
>>>> #<unavailable argument>
>>>> #<unavailable argument>
>>>> #<STUMPWM::TILE-GROUP {1003D44AF3}>
>>>> #S(frame 1 NIL 0 0 1280 800))
>>>> 15: (STUMPWM::REMOVE-HEAD
>>>> #S<screen #<XLIB:SCREEN :0.0 1280x800x24 TRUE-COLOR>>
>>>> #S(frame 1 NIL 0 0 1280 800))
>>>> 16: (STUMPWM::SCALE-SCREEN
>>>> #S<screen #<XLIB:SCREEN :0.0 1280x800x24 TRUE-COLOR>>
>>>> (#S(frame 0 NIL 0 0 1280 800)))
>>>> 17: ((LABELS #:G76 :IN \"/home/ernesto/programs/stumpwm/events.lisp\
>>>> ")
>>>> :STACK-MODE
>>>> NIL
>>>> :WINDOW
>>>> #<XLIB:WINDOW :0 AC>
>>>> :X
>>>> 0
>>>> :Y
>>>> 0
>>>> :WIDTH
>>>> 1280
>>>> :HEIGHT
>>>> 800
>>>> :BORDER-WIDTH
>>>> 0
>>>> :VALUE-MASK
>>>> NIL)
>>>> 18: (STUMPWM::HANDLE-EVENT
>>>> :DISPLAY
>>>> #<XLIB:DISPLAY :0 (The X.Org Foundation R11204000)>
>>>> :EVENT-KEY
>>>> :CONFIGURE-NOTIFY
>>>> :EVENT-CODE
>>>> 22
>>>> :SEND-EVENT-P
>>>> NIL
>>>> :SEQUENCE
>>>> 26141
>>>> :EVENT-WINDOW
>>>> #<XLIB:WINDOW :0 AC>
>>>> :WINDOW
>>>> #<XLIB:WINDOW :0 AC>
>>>> :ABOVE-SIBLING
>>>> NIL
>>>> :X
>>>> 0
>>>> :Y
>>>> 0
>>>> :WIDTH
>>>> 1280
>>>> :HEIGHT
>>>> 800
>>>> :BORDER-WIDTH
>>>> 0
>>>> :OVERRIDE-REDIRECT-P
>>>> NIL)
>>>> 19: ((FLET SB-THREAD::WITH-RECURSIVE-LOCK-THUNK :IN
>>>> XLIB:PROCESS-EVENT))
>>>> 20: ((FLET #:WITHOUT-INTERRUPTS-BODY-89240 :IN
>>>> SB-THREAD::CALL-WITH-RECURSIVE-LOCK))
>>>> 21: (SB-THREAD::CALL-WITH-RECURSIVE-LOCK
>>>> #<CLOSURE (FLET SB-THREAD::WITH-RECURSIVE-LOCK-THUNK :IN
>>>> XLIB:PROCESS-EVENT)
>>>> {7FFFF6EBF5FB}>
>>>> #<SB-THREAD:MUTEX \"CLX Event Lock\"
>>>> owner: #<SB-THREAD:THREAD \"main thread\" RUNNING
>>>> {1003C71043}>>)
>>>> 22: ((FLET SB-IMPL::TIMEOUT-BODY :IN XLIB:PROCESS-EVENT))
>>>> 23: (XLIB:PROCESS-EVENT
>>>> #<XLIB:DISPLAY :0 (The X.Org Foundation R11204000)>
>>>> :HANDLER
>>>> #<FUNCTION STUMPWM::HANDLE-EVENT>
>>>> :TIMEOUT
>>>> 0
>>>> :PEEK-P
>>>> NIL
>>>> :DISCARD-P
>>>> NIL
>>>> :FORCE-OUTPUT-P
>>>> T)
>>>> 24: ((FLET #:WITHOUT-INTERRUPTS-BODY-89240 :IN
>>>> SB-THREAD::CALL-WITH-RECURSIVE-LOCK))
>>>> 25: (SB-THREAD::CALL-WITH-RECURSIVE-LOCK
>>>> #<CLOSURE (FLET SB-THREAD::WITH-RECURSIVE-LOCK-THUNK :IN
>>>> STUMPWM::STUMPWM-INTERNAL-LOOP)
>>>> {7FFFF6EBFB2B}>
>>>> #<SB-THREAD:MUTEX \"CLX Event Lock\"
>>>> owner: #<SB-THREAD:THREAD \"main thread\" RUNNING
>>>> {1003C71043}>>)
>>>> 26: (STUMPWM::STUMPWM-INTERNAL-LOOP)
>>>> 27: (STUMPWM::STUMPWM-INTERNAL \":0\")
>>>> 28: (STUMPWM \":0\")
>>>> 29: ((LAMBDA () :IN \"/home/ernesto/programs/stumpwm/make-image.lisp\
>>>> "))
>>>> 30: ((FLET #:WITHOUT-INTERRUPTS-BODY-236916 :IN
>>>> SB-EXT:SAVE-LISP-AND-DIE))
>>>> 31: ((LABELS SB-IMPL::RESTART-LISP :IN SB-EXT:SAVE-LISP-AND-DIE))
>>>> "
>>>>
>>>>
>>>> _______________________________________________
>>>> Stumpwm-devel mailing list
>>>> address@hidden
>>>> https://lists.nongnu.org/mailman/listinfo/stumpwm-devel
>>>
>>>
>>> _______________________________________________
>>> Stumpwm-devel mailing list
>>> address@hidden
>>> https://lists.nongnu.org/mailman/listinfo/stumpwm-devel
>>
>> _______________________________________________
>> Stumpwm-devel mailing list
>> address@hidden
>> https://lists.nongnu.org/mailman/listinfo/stumpwm-devel
>
>
> _______________________________________________
> Stumpwm-devel mailing list
> address@hidden
> https://lists.nongnu.org/mailman/listinfo/stumpwm-devel