finalizer again
This commit is contained in:
@@ -824,7 +824,10 @@
|
|||||||
#t)))
|
#t)))
|
||||||
|
|
||||||
|
|
||||||
|
(define finalizer-executed #f)
|
||||||
|
|
||||||
(define (rkt-webview-finalizer rkt-wv-store close-windows message)
|
(define (rkt-webview-finalizer rkt-wv-store close-windows message)
|
||||||
|
(unless finalizer-executed
|
||||||
(dbg-webview "rkt-webview-finalizer active")
|
(dbg-webview "rkt-webview-finalizer active")
|
||||||
(when close-windows
|
(when close-windows
|
||||||
(let ((open-windows (hash->list rkt-wv-store)))
|
(let ((open-windows (hash->list rkt-wv-store)))
|
||||||
@@ -833,7 +836,6 @@
|
|||||||
(handle (cdr kv)))
|
(handle (cdr kv)))
|
||||||
(rkt-webview-close handle)))
|
(rkt-webview-close handle)))
|
||||||
open-windows)))
|
open-windows)))
|
||||||
(rkt_webview_register_evt_callback #f)
|
|
||||||
(dbg-webview "Sending guard-stop message to event callback")
|
(dbg-webview "Sending guard-stop message to event callback")
|
||||||
(event-callback evt-guard-stop)
|
(event-callback evt-guard-stop)
|
||||||
(dbg-webview "Cleaning up FFI library")
|
(dbg-webview "Cleaning up FFI library")
|
||||||
@@ -842,6 +844,8 @@
|
|||||||
(dbg-webview "Stopping event processing thread (kill-thread)")
|
(dbg-webview "Stopping event processing thread (kill-thread)")
|
||||||
(stop-event-processing)
|
(stop-event-processing)
|
||||||
(dbg-webview "Finalizer done")
|
(dbg-webview "Finalizer done")
|
||||||
|
(set finalizer-executed #t)
|
||||||
|
)
|
||||||
)
|
)
|
||||||
|
|
||||||
(define (rkt-webview-exit . args)
|
(define (rkt-webview-exit . args)
|
||||||
@@ -853,7 +857,8 @@
|
|||||||
)
|
)
|
||||||
(rkt-webview-finalizer rkt-wv-store cl-w msg)
|
(rkt-webview-finalizer rkt-wv-store cl-w msg)
|
||||||
(unregister-custodian-shutdown rkt-wv-store custodian-finalizer)
|
(unregister-custodian-shutdown rkt-wv-store custodian-finalizer)
|
||||||
))
|
)
|
||||||
|
)
|
||||||
|
|
||||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||||
;; Cleanup on exit
|
;; Cleanup on exit
|
||||||
|
|||||||
Reference in New Issue
Block a user