From: Tom Lane Date: Mon, 10 Oct 2016 14:35:58 +0000 (-0400) Subject: In PQsendQueryStart(), avoid leaking any left-over async result. X-Git-Tag: REL9_1_24~14 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=fb6825fe57651dfd4dfe9d2041c715b03c5c6323;p=thirdparty%2Fpostgresql.git 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: --- diff --git a/src/interfaces/libpq/fe-exec.c b/src/interfaces/libpq/fe-exec.c index 68a848ab5bd..7418b152dc7 100644 --- a/src/interfaces/libpq/fe-exec.c +++ b/src/interfaces/libpq/fe-exec.c @@ -1240,8 +1240,7 @@ PQsendQueryStart(PGconn *conn) } /* initialize async result-accumulation state */ - conn->result = NULL; - conn->curTuple = NULL; + pqClearAsyncResult(conn); /* ready to send command message */ return true;