[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Guile-commits] GNU Guile branch, syncase-in-boot-9, updated. 2032f3d1db

From: Andy Wingo
Subject: [Guile-commits] GNU Guile branch, syncase-in-boot-9, updated. 2032f3d1db09aa63de4ec060081a5bf9053f0d3c
Date: Thu, 21 May 2009 19:39:29 +0000

This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU Guile".

The branch, syncase-in-boot-9 has been updated
       via  2032f3d1db09aa63de4ec060081a5bf9053f0d3c (commit)
      from  0f423f20aae6228431d3695e60ade937858110b8 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit 2032f3d1db09aa63de4ec060081a5bf9053f0d3c
Author: Andy Wingo <address@hidden>
Date:   Thu May 21 21:39:37 2009 +0200

    fix multiple values returning from srfi-18's `with-exception-handler'
    * module/srfi/srfi-18.scm (with-exception-handler): Hah! Fixed a
      scurrilous bug in which we assumed that the thunk returned one or more
      values. Hah.


Summary of changes:
 module/srfi/srfi-18.scm |    6 ++++--
 1 files changed, 4 insertions(+), 2 deletions(-)

diff --git a/module/srfi/srfi-18.scm b/module/srfi/srfi-18.scm
index 75f1088..dd92079 100644
--- a/module/srfi/srfi-18.scm
+++ b/module/srfi/srfi-18.scm
@@ -151,8 +151,10 @@
                    (hashq-set! thread-exception-handlers ct hl) 
                    (handler obj))
                  (lambda () 
-                   (let ((r (thunk)))
-                     (hashq-set! thread-exception-handlers ct hl) r))))))
+                   (call-with-values thunk
+                     (lambda res
+                       (hashq-set! thread-exception-handlers ct hl)
+                       (apply values res))))))))
 (define (current-exception-handler)
   (car (current-handler-stack)))

GNU Guile

reply via email to

[Prev in Thread] Current Thread [Next in Thread]