window: Improve call-with-window.
authorDavid Thompson <dthompson2@worcester.edu>
Mon, 14 Dec 2015 17:09:17 +0000 (12:09 -0500)
committerDavid Thompson <dthompson2@worcester.edu>
Mon, 14 Dec 2015 17:09:17 +0000 (12:09 -0500)
* sdl2/video.scm (call-with-window): Use a pre-existing window object
  instead of making a new one.

sdl2/video.scm

index e4d6d6c..ab2ec0f 100644 (file)
@@ -127,16 +127,14 @@ the form '(x y)', where each coordinate is measured in pixels."
   "Close WINDOW."
   (ffi:sdl-destroy-window (unwrap-window window)))
 
-(define (call-with-window args proc)
-  "Call PROC with a new window defined by ARGS, a list of keyword
-arguments accepted by 'make-window', and close it when PROC
+(define (call-with-window window proc)
+  "Call PROC with WINDOW, an SDL window object, and close it when PROC
 returns or otherwise exits."
-  (let ((window (apply make-window args)))
-    (dynamic-wind
-      (const #t)
-      (lambda () (proc window))
-      (lambda ()
-        (close-window! window)))))
+  (dynamic-wind
+    (const #t)
+    (lambda () (proc window))
+    (lambda ()
+      (close-window! window))))
 
 (define (window-title window)
   "Return the title for WINDOW."