+ fixed a bug in the destroy functions and finalizers.
This commit is contained in:
parent
1bf411918c
commit
d4ea951ebf
|
@ -69,8 +69,9 @@
|
|||
(lambda (return)
|
||||
(table-walk (lambda (key value)
|
||||
(let ((color (weak-pointer-ref value)))
|
||||
(if (equal? (list r g b)
|
||||
(extract-rgb-values color))
|
||||
;; color can be #f for some strange reasons
|
||||
(if (and color (equal? (list r g b)
|
||||
(extract-rgb-values color)))
|
||||
(return color))))
|
||||
*weak-color-list*)
|
||||
#f)))
|
||||
|
|
|
@ -48,8 +48,6 @@
|
|||
(let ((Xdisplay (display-Xdisplay display)))
|
||||
(if (integer? Xdisplay)
|
||||
(begin
|
||||
(if (display-after-function display)
|
||||
((display-after-function display) display))
|
||||
(display-list-delete! display)
|
||||
(%close-display Xdisplay)
|
||||
(display-set-Xdisplay! display 'already-closed)))))
|
||||
|
|
|
@ -59,6 +59,7 @@
|
|||
(Xwindow (window-Xwindow window)))
|
||||
(if (integer? Xwindow)
|
||||
(begin
|
||||
(window-list-delete! window)
|
||||
(%destroy-window Xdisplay Xwindow)
|
||||
(window-set-Xwindow! window 'already-destroyed)))))
|
||||
|
||||
|
|
Loading…
Reference in New Issue