Hate to bring this up again. Mplayer is still crapping out with a "division
by zero" error:

> /: division by zero
>
> <1/169> #<SYSTEM-FUNCTION EXT:SHOW-STACK> 3
> <2/165> #<COMPILED-FUNCTION STUMPWM::PRINT-BACKTRACE>
> [164] unwind-protect frame
> - #<COMPILED-FUNCTION STUMPWM::BACKTRACE-STRING>
> <3/158> #<COMPILED-FUNCTION STUMPWM::BACKTRACE-STRING>
> - :TOP-LEVEL
> - #<COMPILED-FUNCTION STUMPWM::PERFORM-TOP-LEVEL-ERROR-ACTION>
> <4/154> #<COMPILED-FUNCTION STUMPWM::PERFORM-TOP-LEVEL-ERROR-ACTION>
> - #<COMPILED-FUNCTION STUMPWM::STUMPWM-INTERNAL-LOOP-3-1>
> <5/152> #<COMPILED-FUNCTION STUMPWM::STUMPWM-INTERNAL-LOOP-3-1>
> - #<COMPILED-FUNCTION STUMPWM::STUMPWM-INTERNAL-LOOP-3-1>
> - #<COMPILED-FUNCTION STUMPWM::STUMPWM-INTERNAL-LOOP>
> <6/148> #<COMPILED-FUNCTION STUMPWM::STUMPWM-INTERNAL-LOOP>
> - #<SYSTEM::SIMPLE-DIVISION-BY-ZERO #x000334B12988>
> <7/143> #<SYSTEM-FUNCTION SIGNAL> 1
> [142] frame binding variables (~ = dynamically):
>   | ~ *PRINT-READABLY* <--> NIL
> - #<SYSTEM::SIMPLE-DIVISION-BY-ZERO #x000334B12988>
> <8/135> #<SYSTEM-FUNCTION />
> - 0
> - 924
> - #(924 0 528 0 349 0 624 0 352 0 4 0 4 0 0 0 0 0)
> <9/130> #<COMPILED-FUNCTION XLIB::DECODE-WM-SIZE-HINTS>
> - #<XLIB:WINDOW 624x352+528+349 localhost #x01E00002 #x000334B11D30>
> <10/128> #<COMPILED-FUNCTION XLIB:WM-NORMAL-HINTS>
> - #<XLIB:WINDOW 624x352+528+349 localhost #x01E00002 #x000334B11D30>
> <11/126> #<COMPILED-FUNCTION STUMPWM::GET-NORMALIZED-NORMAL-HINTS>
> - :NORMAL
> - ""
> - "xv"
> - "MPlayer"
> - "MPlayer"
> - 349
> - 528
> - 352
> - 624
> - #<XLIB:WINDOW 624x352+528+349 localhost #x01E00002 #x000334B11D30>
> - STUMPWM::WINDOW
> - #<XLIB:WINDOW 624x352+528+349 localhost #x01E00002 #x000334B11D30>
> <12/102> #<COMPILED-FUNCTION STUMPWM::XWIN-TO-WINDOW>
> - #<XLIB:WINDOW 624x352+528+349 localhost #x01E00002 #x000334B11D30>
> <13/100> #<COMPILED-FUNCTION STUMPWM::PROCESS-MAPPED-WINDOW>
> - NIL
> - #S<screen #<XLIB:SCREEN #x000334912720>>
> - #<XLIB:WINDOW 624x352+528+349 localhost #x01E00002 #x000334B11D30>
> - #<XLIB:WINDOW 1680x1050+0+0 localhost #x0000025B #x0003349127C8>
> <14/94> #<COMPILED-FUNCTION #:G25209>
> - #<COMPILED-FUNCTION #:G25209>
> [86] catch frame for tag #:SIMPLE-RESTART-26031
> <15/82> #<COMPILED-FUNCTION STUMPWM::HANDLE-EVENT-2>
> - #<COMPILED-FUNCTION STUMPWM::HANDLE-EVENT-2>
> - #<COMPILED-FUNCTION STUMPWM::HANDLE-EVENT-2>
> [75] compiled tagbody frame for #(NIL)
> -
> #(#(#(NIL
>       (:DISPLAY #<XLIB:DISPLAY localhost:0 (The X.Org Foundation R10603901)
> X11.0 #x000334912630> :EVENT-CODE 20 :SEND-EVENT-P NIL :SEQUENCE 53480
> :EVENT-KEY
>        :MAP-REQUEST :PARENT #<XLIB:WINDOW 1680x1050+0+0 localhost
> #x0000025B #x0003349127C8> :EVENT-WINDOW
>        #<XLIB:WINDOW 1680x1050+0+0 localhost #x0000025B #x0003349127C8>
> :WINDOW #<XLIB:WINDOW 624x352+528+349 localhost #x01E00002 #x000334B11D30>))
>     #<COMPILED-FUNCTION #:G25209>)
>   NIL)
> -
> #(#(NIL
>     (:DISPLAY #<XLIB:DISPLAY localhost:0 (The X.Org Foundation R10603901)
> X11.0 #x000334912630> :EVENT-CODE 20 :SEND-EVENT-P NIL :SEQUENCE 53480
> :EVENT-KEY
>      :MAP-REQUEST :PARENT #<XLIB:WINDOW 1680x1050+0+0 localhost #x0000025B
> #x0003349127C8> :EVENT-WINDOW
>      #<XLIB:WINDOW 1680x1050+0+0 localhost #x0000025B #x0003349127C8>
> :WINDOW #<XLIB:WINDOW 624x352+528+349 localhost #x01E00002 #x000334B11D30>))
>   #<COMPILED-FUNCTION #:G25209>)
> - #<COMPILED-FUNCTION STUMPWM::HANDLE-EVENT>
> - #<XLIB:DISPLAY localhost:0 (The X.Org Foundation R10603901) X11.0
> #x000334912630>
> <16/66> #<COMPILED-FUNCTION STUMPWM::HANDLE-EVENT>
> - #<UNBOUND>
> - #<UNBOUND>
> - #<COMPILED-FUNCTION STUMPWM::HANDLE-EVENT>
> <17/63> #<ADD-ON-SYSTEM-FUNCTION XLIB:PROCESS-EVENT> 2
> - 1
> - #<COMPILED-FUNCTION STUMPWM::STUMPWM-INTERNAL-LOOP-5>
> <18/54> #<COMPILED-FUNCTION STUMPWM::STUMPWM-INTERNAL-LOOP-5>
> [53] handler frame for conditions XLIB:LOOKUP-ERROR WARNING (OR
> SERIOUS-CONDITION ERROR) T
> - #<COMPILED-FUNCTION STUMPWM::STUMPWM-INTERNAL-LOOP-4>
> - #<COMPILED-FUNCTION STUMPWM::STUMPWM-INTERNAL-LOOP-2>
> - #<COMPILED-FUNCTION STUMPWM::STUMPWM-INTERNAL-LOOP>
> <19/43> #<COMPILED-FUNCTION STUMPWM::STUMPWM-INTERNAL-LOOP>
> [40] unwind-protect frame
> [35] catch frame for tag #:SIMPLE-RESTART-29383
> - NIL
> - ""
> - ":0"
> <20/27> #<COMPILED-FUNCTION STUMPWM::STUMPWM-INTERNAL>
> - #<COMPILED-FUNCTION STUMPWM>
> <21/22> #<COMPILED-FUNCTION STUMPWM>
> - #<COMPILED-FUNCTION STUMPWM>
> - ((EXT:QUIT))
> [10] frame binding variables #<FRAME-POINTER 10> binds (~ = dynamically):
>   Next environment: NIL
> <22/4> #<FUNCTION :LAMBDA NIL (STUMPWM) (EXT:QUIT)> 0
> - #<FUNCTION :LAMBDA NIL (STUMPWM) (EXT:QUIT)>
> <23/2> #<COMPILED-FUNCTION EXT::SAVEINITMEM-1>
> <24/3> #<SYSTEM-FUNCTION SYSTEM::DRIVER>
> <25/3> #<SYSTEM-FUNCTION SYSTEM::DRIVER>
> - #<ADDRESS #x000000000000>
> - #<ADDRESS #x000000000000>
>


When I try to load the mplayer fix that was discussed by Shawn on this
mailing list I get the following error:

> DEFUN/DEFMACRO(XLIB::DECODE-WM-SIZE-HINTS): #<PACKAGE XLIB> is
> locked<1/166> #<SYSTEM-FUNCTION EXT:SHOW-STACK> 3
> <2/162> #<COMPILED-FUNCTION STUMPWM::PRINT-BACKTRACE>
> [161] unwind-protect frame
> - #<COMPILED-FUNCTION STUMPWM::BACKTRACE-STRING>
> <3/155> #<COMPILED-FUNCTION STUMPWM::BACKTRACE-STRING>
> - #S<screen #<XLIB:SCREEN #x00033492FA38>>
> - #<COMPILED-FUNCTION ERR>
> - "
> ~A"
> <4/149> #<COMPILED-FUNCTION ERR>
> [146] compiled tagbody frame for #(NIL)
> - #(#(NIL "(load \"/home/egon/.stumpwm.d/mplayer_fix.lisp\")")
> #<SYSTEM::SIMPLE-PACKAGE-ERROR #x000334B91B98>)
> - #(NIL "(load \"/home/egon/.stumpwm.d/mplayer_fix.lisp\")")
> - "(load \"/home/egon/.stumpwm.d/mplayer_fix.lisp\")"
> <5/136> #<COMPILED-FUNCTION STUMPWM::EVAL-LINE>
> - ("(load \"/home/egon/.stumpwm.d/mplayer_fix.lisp\")")
> - #S(STUMPWM::COMMAND :NAME STUMPWM::EVAL-LINE :CLASS T :ARGS ((:REST
> "Eval: ")))
> [130] catch frame for tag ERROR
> - #S(STUMPWM::ARGUMENT-LINE :STRING "eval" :START 5)
> <6/126> #<COMPILED-FUNCTION STUMPWM::CALL-INTERACTIVELY>
> [124] frame binding variables (~ = dynamically):
>   | ~ STUMPWM::*INTERACTIVEP* <--> NIL
> - #S(STUMPWM::ARGUMENT-LINE :STRING "eval" :START 5)
> - "eval"
> <7/118> #<COMPILED-FUNCTION STUMPWM::EVAL-COMMAND-PARSE-AND-RUN-COMMAND>
> <8/116> #<COMPILED-FUNCTION STUMPWM::EVAL-COMMAND-3>
> - #<COMPILED-FUNCTION STUMPWM::EVAL-COMMAND-3>
> - #<COMPILED-FUNCTION STUMPWM::EVAL-COMMAND-3>
> [109] frame binding variables (~ = dynamically):
>   | ~ SYSTEM::*ACTIVE-RESTARTS* <-->
> (#S(RESTART :NAME STUMPWM::TOP-LEVEL :TEST #<COMPILED-FUNCTION
> SYSTEM::DEFAULT-RESTART-TEST> :INVOKE-TAG #:SIMPLE-RESTART-26031
> :INVOKE-FUNCTION NIL
>     :REPORT #<FUNCTION :LAMBDA (STREAM) (FORMAT STREAM "Return to stumpwm's
> top level")> :INTERACTIVE #<COMPILED-FUNCTION
> SYSTEM::DEFAULT-RESTART-INTERACTIVE>
>     :MEANINGFULP T)
>  #S(RESTART :NAME STUMPWM::QUIT-STUMPWM :TEST #<COMPILED-FUNCTION
> SYSTEM::DEFAULT-RESTART-TEST> :INVOKE-TAG #:SIMPLE-RESTART-29383
> :INVOKE-FUNCTION NIL
>     :REPORT #<FUNCTION :LAMBDA (STREAM) (FORMAT STREAM "Quit Stumpwm")>
> :INTERACTIVE #<COMPILED-FUNCTION SYSTEM::DEFAULT-RESTART-INTERACTIVE>
> :MEANINGFULP T))
> - 126
> - #(#(NIL "eval" T) #<COMPILED-FUNCTION
> STUMPWM::EVAL-COMMAND-PARSE-AND-RUN-COMMAND>)
> - #<COMPILED-FUNCTION STUMPWM::EVAL-COMMAND>
> - "eval"
> <9/98> #<COMPILED-FUNCTION STUMPWM::EVAL-COMMAND>
> - "eval"
> - 0
> -
> (:DISPLAY #<XLIB:DISPLAY localhost:0 (The X.Org Foundation R10603901) X11.0
> #x00033492F8B8> :EVENT-CODE 2 :SEND-EVENT-P NIL :SEQUENCE 49009 :EVENT-KEY
>  :KEY-PRESS :CODE 64 :WINDOW #<XLIB:WINDOW 1678x1030+0+9 localhost
> #x00C00769 #x000334937848> :EVENT-WINDOW
>  #<XLIB:WINDOW 1678x1030+0+9 localhost #x00C00769 #x000334937848> :CHILD
> #<XLIB:WINDOW 1662x1026+2+2 localhost #x00C0076E #x000334937E28> :ROOT
>  #<XLIB:WINDOW 1680x1050+0+0 localhost #x0000025D #x00033492FFE0> :X 1218
> :Y 735 :ROOT-X 1219 :ROOT-Y 745 :STATE 0 :TIME 268435777 :SAME-SCREEN-P T)
> <10/93> #<COMPILED-FUNCTION #:G25372>
> [89] frame binding variables (~ = dynamically):
>   | ~ SYSTEM::*ACTIVE-RESTARTS* <-->
> (#S(RESTART :NAME STUMPWM::QUIT-STUMPWM :TEST #<COMPILED-FUNCTION
> SYSTEM::DEFAULT-RESTART-TEST> :INVOKE-TAG #:SIMPLE-RESTART-29383
> :INVOKE-FUNCTION NIL
>     :REPORT #<FUNCTION :LAMBDA (STREAM) (FORMAT STREAM "Quit Stumpwm")>
> :INTERACTIVE #<COMPILED-FUNCTION SYSTEM::DEFAULT-RESTART-INTERACTIVE>
> :MEANINGFULP T))
> - #<COMPILED-FUNCTION STUMPWM::HANDLE-EVENT-2>
> <11/82> #<COMPILED-FUNCTION STUMPWM::HANDLE-EVENT-2>
> [81] handler frame for conditions (OR XLIB:WINDOW-ERROR
> XLIB:DRAWABLE-ERROR)
> - #<COMPILED-FUNCTION STUMPWM::HANDLE-EVENT-1>
> - 147
> - #<XLIB:WINDOW 1678x1030+0+9 localhost #x00C00769 #x000334937848>
> -
> #(NIL
>   (:DISPLAY #<XLIB:DISPLAY localhost:0 (The X.Org Foundation R10603901)
> X11.0 #x00033492F8B8> :EVENT-CODE 2 :SEND-EVENT-P NIL :SEQUENCE 49009
> :EVENT-KEY
>    :KEY-PRESS :CODE 64 :WINDOW #<XLIB:WINDOW 1678x1030+0+9 localhost
> #x00C00769 #x000334937848> :EVENT-WINDOW
>    #<XLIB:WINDOW 1678x1030+0+9 localhost #x00C00769 #x000334937848> :CHILD
> #<XLIB:WINDOW 1662x1026+2+2 localhost #x00C0076E #x000334937E28> :ROOT
>    #<XLIB:WINDOW 1680x1050+0+0 localhost #x0000025D #x00033492FFE0> :X 1218
> :Y 735 :ROOT-X 1219 :ROOT-Y 745 :STATE 0 :TIME 268435777 :SAME-SCREEN-P T))
> - :KEY-PRESS
> -
> (:DISPLAY #<XLIB:DISPLAY localhost:0 (The X.Org Foundation R10603901) X11.0
> #x00033492F8B8> :EVENT-CODE 2 :SEND-EVENT-P NIL :SEQUENCE 49009 :EVENT-KEY
>  :KEY-PRESS :CODE 64 :WINDOW #<XLIB:WINDOW 1678x1030+0+9 localhost
> #x00C00769 #x000334937848> :EVENT-WINDOW
>  #<XLIB:WINDOW 1678x1030+0+9 localhost #x00C00769 #x000334937848> :CHILD
> #<XLIB:WINDOW 1662x1026+2+2 localhost #x00C0076E #x000334937E28> :ROOT
>  #<XLIB:WINDOW 1680x1050+0+0 localhost #x0000025D #x00033492FFE0> :X 1218
> :Y 735 :ROOT-X 1219 :ROOT-Y 745 :STATE 0 :TIME 268435777 :SAME-SCREEN-P T)
> <12/66> #<COMPILED-FUNCTION STUMPWM::HANDLE-EVENT>
> - #<UNBOUND>
> - #<UNBOUND>
> - #<XLIB:DISPLAY localhost:0 (The X.Org Foundation R10603901) X11.0
> #x00033492F8B8>
> <13/63> #<ADD-ON-SYSTEM-FUNCTION XLIB:PROCESS-EVENT> 2
> - 247521/250000
> <14/54> #<COMPILED-FUNCTION STUMPWM::STUMPWM-INTERNAL-LOOP-5>
> - #<COMPILED-FUNCTION STUMPWM::STUMPWM-INTERNAL-LOOP-5>
> - #<COMPILED-FUNCTION STUMPWM::STUMPWM-INTERNAL-LOOP-5>
> - #<COMPILED-FUNCTION STUMPWM::STUMPWM-INTERNAL-LOOP-3>
> - #<COMPILED-FUNCTION STUMPWM::STUMPWM-INTERNAL-LOOP-1>
> <15/43> #<COMPILED-FUNCTION STUMPWM::STUMPWM-INTERNAL-LOOP>
> [43] frame binding variables (~ = dynamically):
>   | ~ *PACKAGE* <--> #<PACKAGE COMMON-LISP-USER>
> [38] frame binding variables (~ = dynamically):
>   | ~ SYSTEM::*ACTIVE-RESTARTS* <--> NIL
> - :LOCAL
> - 0
> - #<COMPILED-FUNCTION STUMPWM::STUMPWM-INTERNAL>
> <16/27> #<COMPILED-FUNCTION STUMPWM::STUMPWM-INTERNAL>
> [26] catch frame for tag :TOP-LEVEL
> - ":0"
> <17/22> #<COMPILED-FUNCTION STUMPWM>
> [20] EVAL frame for form (STUMPWM)
> [16] frame binding environments
>   VAR_ENV <--> NIL
>   FUN_ENV <--> NIL
>   BLOCK_ENV <--> NIL
>   GO_ENV <--> NIL
>   DECL_ENV <--> ((DECLARATION XLIB::CLX-VALUES VALUES OPTIMIZE
> DECLARATION))
> [7] APPLY frame for call (:LAMBDA)
> <18/4> #<FUNCTION :LAMBDA NIL (STUMPWM) (EXT:QUIT)> 0
> - #<COMPILED-FUNCTION EXT::SAVEINITMEM-1>
> <19/2> #<COMPILED-FUNCTION EXT::SAVEINITMEM-1>
> <20/3> #<SYSTEM-FUNCTION SYSTEM::DRIVER>
> <21/3> #<SYSTEM-FUNCTION SYSTEM::DRIVER>
> - #<ADDRESS #x000000000000>
>


I realize that I haven't done anything to change the scenario, because I am
unable to load the fix that was mentioned.

> (in-package :xlib)
> (defun decode-wm-size-hints (vector)
>  (declare (type (or null (simple-vector *)) vector))
>  (declare (values (or null wm-size-hints)))
>  (when vector
>    (let ((flags (aref vector 0))
>          (hints (make-wm-size-hints)))
>      (declare (type card16 flags)
>               (type wm-size-hints hints))
>      (setf (wm-size-hints-user-specified-position-p hints) (logbitp 0
> flags))
>      (setf (wm-size-hints-user-specified-size-p hints) (logbitp 1 flags))
>      (setf (wm-size-hints-program-specified-position-p hints)
> (logbitp 2 flags))
>      (setf (wm-size-hints-program-specified-size-p hints) (logbitp 3
> flags))
>      (when (logbitp 4 flags)
>        (setf (wm-size-hints-min-width hints) (aref vector 5)
>              (wm-size-hints-min-height hints) (aref vector 6)))
>      (when (logbitp 5 flags)
>        (setf (wm-size-hints-max-width hints) (aref vector 7)
>              (wm-size-hints-max-height hints) (aref vector 8)))
>      (when (logbitp 6 flags)
>        (setf (wm-size-hints-width-inc hints) (aref vector 9)
>              (wm-size-hints-height-inc hints) (aref vector 10)))
>      (when (logbitp 7 flags)
>        (setf (wm-size-hints-min-aspect hints) (ignore-errors (/ (aref
> vector 11) (aref vector 12)))
>              (wm-size-hints-max-aspect hints) (ignore-errors (/ (aref
> vector 13) (aref vector 14)))))
>      (when (> (length vector) 15)
>        ;; This test is for backwards compatibility since old Xlib programs
>        ;; can set a size-hints structure that is too small.  See ICCCM.
>        (when (logbitp 8 flags)
>          (setf (wm-size-hints-base-width hints) (aref vector 15)
>                (wm-size-hints-base-height hints) (aref vector 16)))
>        (when (logbitp 9 flags)
>          (setf (wm-size-hints-win-gravity hints)
>                (decode-type (member :unmap :north-west :north :north-east
> :west
>                                     :center :east :south-west :south
> :south-east :static)
>                             (aref vector 17)))))
>      ;; Obsolete fields
>      (when (or (logbitp 0 flags) (logbitp 2 flags))
>        (setf (wm-size-hints-x hints) (aref vector 1)
>              (wm-size-hints-y hints) (aref vector 2)))
>      (when (or (logbitp 1 flags) (logbitp 3 flags))
>        (setf (wm-size-hints-width hints) (aref vector 3)
>              (wm-size-hints-height hints) (aref vector 4)))
>      hints)))
>

This is on  Linux bigred 2.6.30-gentoo-r4 #2 SMP PREEMPT Thu Aug 27 14:10:22
UTC 2009 x86_64 AMD Phenom(tm) II X4 940 Processor AuthenticAMD GNU/Linux,
clisp-2.48 with clx.f XWMHints = NULL patch.

I've run across a couple ASYNCHRONOUS XLIB crashes as well. I'll send them
along once I have them pinned down a bit better.

-Egon Hyszczak
_______________________________________________
Stumpwm-devel mailing list
Stumpwm-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/stumpwm-devel

Reply via email to