[rucksack-cvs] CVS rucksack
alemmens
alemmens at common-lisp.net
Thu Aug 3 11:52:46 UTC 2006
Update of /project/rucksack/cvsroot/rucksack
In directory clnet:/tmp/cvs-serv21536
Modified Files:
transactions.lisp
Log Message:
WITH-TRANSACTION now returns the result of the body as first value. (From Edi Weitz.)
--- /project/rucksack/cvsroot/rucksack/transactions.lisp 2006/08/03 11:39:39 1.4
+++ /project/rucksack/cvsroot/rucksack/transactions.lisp 2006/08/03 11:52:46 1.5
@@ -1,4 +1,4 @@
-;; $Id: transactions.lisp,v 1.4 2006/08/03 11:39:39 alemmens Exp $
+;; $Id: transactions.lisp,v 1.5 2006/08/03 11:52:46 alemmens Exp $
(in-package :rucksack)
@@ -337,13 +337,13 @@
(setf ,transaction (transaction-start :rucksack ,rucksack , at args))
(let ((*transaction* ,transaction))
(with-simple-restart (abort "Abort ~S" ,transaction)
- (setf ,result , at body)
+ (setf ,result (progn , at body))
(transaction-commit ,transaction)
(setf ,committed t)))
;; Normal exit from the WITH-SIMPLE-RESTART above -- either
;; everything went well or we aborted -- the ,COMMITTED will tell
;; us. In either case we jump out of the RETRY loop.
- (return-from ,transaction (values ,committed ,result)))
+ (return-from ,transaction (values ,result ,committed)))
(unless ,committed
(transaction-rollback ,transaction)))))
;; Normal exit from the above block -- we selected the RETRY restart.
More information about the rucksack-cvs
mailing list