-static void
-trans_rollback_exc(struct ucwlib_context *c)
-{
- // In case we were processing an exception, roll back all transactions
- // through which the exception has propagated.
- struct exception *x = c->current_exc;
- struct trans *t = x->trans;
- while (t != c->current_trans)
- {
- DBG("Rolling back transaction %p after exception", t);
- struct trans *tprev = t->prev_trans;
- rp_delete(t->rpool);
- trans_drop(t, c);
- t = tprev;
- }
-
- c->current_exc = NULL;
- mp_flush(c->exc_pool);
-}
-