Re: [STUMP] Stumpwm Crashes when disconnecting monitor via xrandr.

David Bjergaard <[email protected]>
Newsgroups gmane.comp.window-managers.stumpwm.devel
Message-ID <[email protected]>
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 <[email protected]> writes:

> David Bjergaard <[email protected]> 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 <[email protected]> writes:
>>
>>> Ernesto Alfonso <[email protected]> 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
>>>> [email protected]
>>>> https://lists.nongnu.org/mailman/listinfo/stumpwm-devel
>>>
>>>
>>> _______________________________________________
>>> Stumpwm-devel mailing list
>>> [email protected]
>>> https://lists.nongnu.org/mailman/listinfo/stumpwm-devel
>>
>> _______________________________________________
>> Stumpwm-devel mailing list
>> [email protected]
>> https://lists.nongnu.org/mailman/listinfo/stumpwm-devel
>
>
> _______________________________________________
> Stumpwm-devel mailing list
> [email protected]
> https://lists.nongnu.org/mailman/listinfo/stumpwm-devel

_______________________________________________
Stumpwm-devel mailing list
[email protected]
https://lists.nongnu.org/mailman/listinfo/stumpwm-devel
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.