From ec9090f0919550982ef2f1aa5451d7bf3909c087 Mon Sep 17 00:00:00 2001 From: Matt Birkholz Date: Wed, 17 Aug 2011 14:45:15 -0700 Subject: [PATCH] Added missing gc-cleanup for s. --- src/gtk/gio.scm | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/src/gtk/gio.scm b/src/gtk/gio.scm index 5f33bc2a0..3a98df09c 100644 --- a/src/gtk/gio.scm +++ b/src/gtk/gio.scm @@ -970,12 +970,17 @@ USA. (define-class ( (constructor ())) ()) -(define-method initialize-instance ((gmount )) - (call-next-method gmount) - (let ((alien (gobject-alien gmount))) +(define-method initialize-instance ((gmountop )) + (call-next-method gmountop) + (add-gc-cleanup gmountop (make-gmountop-cleanup (gio-cleanup-info gmountop))) + (let ((alien (gobject-alien gmountop))) (set-alien/ctype! alien '|GMountOperation|) (C-call "g_mount_operation_new" alien) - (error-if-null alien "Could not create:" gmount))) + (error-if-null alien "Could not create:" gmountop))) + +(define (make-gmountop-cleanup gio-info) + (named-lambda (gmountop-cleanup) + (cleanup-gio gio-info))) (define (gfile-mount gfile) (let* ((mount-op (make-g-mount-operation)) -- 2.25.1