summaryrefslogtreecommitdiff
path: root/etc
diff options
context:
space:
mode:
authorEli Zaretskii <eliz@gnu.org>2023-11-21 15:36:22 +0200
committerEli Zaretskii <eliz@gnu.org>2023-11-21 15:36:22 +0200
commitd72a4ed65ce23581ff8b3bf4340caecf31c18f43 (patch)
treee29b9e83e4e9eeccfac0019eb268c8ce1d84eca1 /etc
parenta7b3c92373373f956234349fe6b792e1396e293e (diff)
downloademacs-d72a4ed65ce23581ff8b3bf4340caecf31c18f43.tar.gz
emacs-d72a4ed65ce23581ff8b3bf4340caecf31c18f43.tar.bz2
emacs-d72a4ed65ce23581ff8b3bf4340caecf31c18f43.zip
Fix 'with-sqlite-transaction' when BODY fails
* lisp/sqlite.el (with-sqlite-transaction): Don't commit changes if BODY errors out. Roll back the transaction if committing fails. (Bug#67142) * etc/NEWS: * doc/lispref/text.texi (Database): Document the error handling in 'with-sqlite-transaction'.
Diffstat (limited to 'etc')
-rw-r--r--etc/NEWS5
1 files changed, 5 insertions, 0 deletions
diff --git a/etc/NEWS b/etc/NEWS
index 1b3532b5657..333699f1015 100644
--- a/etc/NEWS
+++ b/etc/NEWS
@@ -62,6 +62,11 @@ of showing the shortcuts.
* Incompatible Lisp Changes in Emacs 29.2
++++
+** 'with-sqlite-transaction' rolls back changes if its BODY fails.
+If the BODY of the macro signals an error, or committing the results
+of the transaction fails, the changes will now be rolled back.
+
* Lisp Changes in Emacs 29.2