From eb6bc03bfb43a11e15c2e24d9f6069add284f930 Mon Sep 17 00:00:00 2001 From: Tom Lane Date: Mon, 10 Oct 2016 10:35:58 -0400 Subject: [PATCH] In PQsendQueryStart(), avoid leaking any left-over async result. Ordinarily there would not be an async result sitting around at this point, but it appears that in corner cases there can be. Considering all the work we're about to launch, it's hardly going to cost anything noticeable to check. It's been like this forever, so back-patch to all supported branches. Report: --- src/interfaces/libpq/fe-exec.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/interfaces/libpq/fe-exec.c b/src/interfaces/libpq/fe-exec.c index 7429e9bfbeb..185fe2b77d8 100644 --- a/src/interfaces/libpq/fe-exec.c +++ b/src/interfaces/libpq/fe-exec.c @@ -1383,8 +1383,7 @@ PQsendQueryStart(PGconn *conn) } /* initialize async result-accumulation state */ - conn->result = NULL; - conn->next_result = NULL; + pqClearAsyncResult(conn); /* reset single-row processing mode */ conn->singleRowMode = false;