(define (make-cairo-surface-cleanup alien)
(named-lambda (cairo-surface-cleanup)
- ;;without-interrupts
+ (assert-without-interruption 'cairo-surface-cleanup)
(if (not (alien-null? alien))
(begin
(C-call "cairo_surface_destroy" alien)
(define (cairo-surface-destroy surface)
(check-cairo-surface-status surface)
- (without-interrupts
+ (without-interruption
(lambda ()
(if (not (alien-null? surface))
- (begin
- (execute-glib-cleanup surface)
- (alien-null! surface))))))
+ (execute-glib-cleanup surface)))))
(define (check-cairo-surface-status surface)
(let ((status (C-call "cairo_surface_status" surface)))
(define (make-cairo-pattern-cleanup alien)
(named-lambda (cairo-pattern-cleanup)
- ;;without-interrupts
+ (assert-without-interruption 'cairo-pattern-cleanup)
(if (not (alien-null? alien))
(begin
(C-call "cairo_pattern_destroy" alien)
(define (cairo-pattern-destroy pattern)
(check-cairo-pattern-status pattern)
- (without-interrupts
+ (without-interruption
(lambda ()
(if (not (alien-null? pattern))
- (begin
- (execute-glib-cleanup pattern)
- (alien-null! pattern))))))
+ (execute-glib-cleanup pattern)))))
(define (check-cairo-pattern-status pattern)
(let ((status (C-call "cairo_pattern_status" pattern)))
(define (make-cairo-cleanup alien)
(named-lambda (cairo-cleanup)
- ;;without-interrupts
+ (assert-without-interruption 'cairo-cleanup)
(if (not (alien-null? alien))
(begin
(C-call "cairo_destroy" alien)
(define (cairo-destroy cairo)
(check-cairo-status cairo)
- (without-interrupts
+ (without-interruption
(lambda ()
- (if (not (alien-null? cairo))
- (begin
- (execute-glib-cleanup cairo)
- (alien-null! cairo))))))
+ (execute-glib-cleanup cairo))))
(define (check-cairo-status cairo)
(let ((status (C-call "cairo_status" cairo)))