From cfb7ed414dd9e7c12670599b887ef4f488cf8f7c Mon Sep 17 00:00:00 2001 From: Bruce Momjian Date: Sun, 14 Mar 1999 16:46:21 +0000 Subject: [PATCH] This is another example of why not allowing utility functions in SPI would be a Bad Thing. For what it's worth, I found another case in libpq where you can get a T message without a D that my utility patch needs to handle. I have attached the updated patch against the 6.4.2 version of src/interfaces/libpq/fe-exec.c Jerry Gay --- src/interfaces/libpq/fe-exec.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/interfaces/libpq/fe-exec.c b/src/interfaces/libpq/fe-exec.c index 34f6d62465..774881f884 100644 --- a/src/interfaces/libpq/fe-exec.c +++ b/src/interfaces/libpq/fe-exec.c @@ -7,7 +7,7 @@ * * * IDENTIFICATION - * $Header: /cvsroot/pgsql/src/interfaces/libpq/fe-exec.c,v 1.75 1999/03/14 16:42:15 momjian Exp $ + * $Header: /cvsroot/pgsql/src/interfaces/libpq/fe-exec.c,v 1.76 1999/03/14 16:46:21 momjian Exp $ * *------------------------------------------------------------------------- */ @@ -538,10 +538,11 @@ parseInput(PGconn *conn) return; if (pendingT) { /* Check the returned message */ - /* if it's a SELECT in a pendingT case, */ + /* if it's a SELECT or FETCH in a pendingT case, */ /* then it probably means no rows returned. */ /* We clear pendingT in that case. */ - if (strncmp(conn->result->cmdStatus, "SELECT", 6) == 0) + if ((strncmp(conn->result->cmdStatus, "SELECT", 6) == 0) || + (strncmp(conn->result->cmdStatus, "FETCH", 5) == 0)) pendingT = 0; } if (!pendingT) conn->asyncStatus = PGASYNC_READY;