diff options
-rw-r--r-- | src/c/urweb.c | 2 | ||||
-rw-r--r-- | src/postgres.sml | 6 |
2 files changed, 7 insertions, 1 deletions
diff --git a/src/c/urweb.c b/src/c/urweb.c index 0ec741cc..ad0d33d9 100644 --- a/src/c/urweb.c +++ b/src/c/urweb.c @@ -2884,7 +2884,7 @@ int uw_rollback(uw_context ctx) { if (ctx->transactionals[i].free) ctx->transactionals[i].free(ctx->transactionals[i].data); - return ctx->app->db_rollback(ctx); + return ctx->app ? ctx->app->db_rollback(ctx) : 0; } void uw_commit(uw_context ctx) { diff --git a/src/postgres.sml b/src/postgres.sml index 59fa3330..a3f33db1 100644 --- a/src/postgres.sml +++ b/src/postgres.sml @@ -411,6 +411,8 @@ fun init {dbstring, prepared = ss, tables, views, sequences} = newline], string "}", newline, + string "PQclear(res);", + newline, string "return 0;", newline, string "}", @@ -434,6 +436,8 @@ fun init {dbstring, prepared = ss, tables, views, sequences} = newline], string "}", newline, + string "PQclear(res);", + newline, string "return 0;", newline, string "}", @@ -457,6 +461,8 @@ fun init {dbstring, prepared = ss, tables, views, sequences} = newline], string "}", newline, + string "PQclear(res);", + newline, string "return 0;", newline, string "}", |