parent
ee0da81dc0
commit
20a9dcbdbd
|
@ -656,7 +656,14 @@
|
||||||
#:on-notice add-notice!)))
|
#:on-notice add-notice!)))
|
||||||
|
|
||||||
(super-new)
|
(super-new)
|
||||||
(register-finalizer this (lambda (obj) (send obj disconnect)))))
|
(register-finalizer this
|
||||||
|
(lambda (obj)
|
||||||
|
;; Keep a reference to the class to keep all FFI callout objects
|
||||||
|
;; (eg, SQLDisconnect) used by its methods from being finalized.
|
||||||
|
(let ([dont-gc this%])
|
||||||
|
(send obj disconnect)
|
||||||
|
;; Dummy result to prevent reference from being optimized away
|
||||||
|
dont-gc)))))
|
||||||
|
|
||||||
;; ----------------------------------------
|
;; ----------------------------------------
|
||||||
|
|
||||||
|
|
|
@ -316,7 +316,14 @@
|
||||||
;; ----
|
;; ----
|
||||||
|
|
||||||
(super-new)
|
(super-new)
|
||||||
(register-finalizer this (lambda (obj) (send obj disconnect)))))
|
(register-finalizer this
|
||||||
|
(lambda (obj)
|
||||||
|
;; Keep a reference to the class to keep all FFI callout objects
|
||||||
|
;; (eg, sqlite3_close) used by its methods from being finalized.
|
||||||
|
(let ([dont-gc this%])
|
||||||
|
(send obj disconnect)
|
||||||
|
;; Dummy result to prevent reference from being optimized away
|
||||||
|
dont-gc)))))
|
||||||
|
|
||||||
;; ----------------------------------------
|
;; ----------------------------------------
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user