rendered paste bodyIndex: qofsession.c
===================================================================
--- qofsession.c (revision 15110)
+++ qofsession.c (working copy)
@@ -1193,7 +1193,9 @@
int err;
gint num;
char *msg, *book_id;
-
+ static int lock = 0;
+
+ if (!lock) return;
if (!session) return;
ENTER ("sess=%p book_id=%s",
session, session->book_id ? session->book_id : "(null)");
@@ -1299,6 +1301,7 @@
be = session->backend;
if (be)
{
+ lock++;
for (node = session->books; node; node=node->next)
{
abook = node->data;
@@ -1311,6 +1314,7 @@
if (save_error_handler(be, session)) return;
}
}
+ lock--;
/* If we got to here, then the backend saved everything
* just fine, and we are done. So return. */
/* Return the book_id to previous value. */