]> granicus.if.org Git - postgresql/commitdiff
Reset error message at PQreset()
authorHeikki Linnakangas <heikki.linnakangas@iki.fi>
Wed, 29 Oct 2014 12:32:01 +0000 (14:32 +0200)
committerHeikki Linnakangas <heikki.linnakangas@iki.fi>
Wed, 29 Oct 2014 12:36:19 +0000 (14:36 +0200)
If you call PQreset() repeatedly, and the connection cannot be
re-established, the error messages from the failed connection attempts
kept accumulating in the error string.

Fixes bug #11455 reported by Caleb Epstein. Backpatch to all supported
versions.

src/interfaces/libpq/fe-connect.c

index 472381f96a95a075440e29390f880d9841f13b22..1a3a6b237a3f4497cfeef1f7837295a0a417a65b 100644 (file)
@@ -2894,6 +2894,7 @@ closePGconn(PGconn *conn)
                                                                                 * absent */
        conn->asyncStatus = PGASYNC_IDLE;
        pqClearAsyncResult(conn);       /* deallocate result and curTuple */
+       resetPQExpBuffer(&conn->errorMessage);
        pg_freeaddrinfo_all(conn->addrlist_family, conn->addrlist);
        conn->addrlist = NULL;
        conn->addr_cur = NULL;