diff options
author | Marc G. Fournier <scrappy@hub.org> | 1997-04-17 20:38:26 +0000 |
---|---|---|
committer | Marc G. Fournier <scrappy@hub.org> | 1997-04-17 20:38:26 +0000 |
commit | 8834795ebf68f0518f6498043e1c7f2abe81f8ec (patch) | |
tree | e5bf34f6e4bca71c5f57c889a714ab70cd3ee354 /src | |
parent | a1f229b19e95ceab78bbd06f7ef1bec92acbe8b4 (diff) | |
download | postgresql-8834795ebf68f0518f6498043e1c7f2abe81f8ec.tar.gz postgresql-8834795ebf68f0518f6498043e1c7f2abe81f8ec.zip |
From: Raymond Toy <toy@rtp.ericsson.se>
Subject: [PATCHES] 970417: two more patches for large objects
Here are two more patches:
1. pg_getint doesn't properly set the status flag when
calling pqGetShort or pqGetLong. This is required when
accessing large objects via libpq. This, combined with
problem 1 above causes postgres to crash when postgres
tries to print out the message that the status was not
good.
2. ExceptionalCondition crashes when called with detail =
NULL. This patch prevents dereferencing the NULL.
Diffstat (limited to 'src')
-rw-r--r-- | src/backend/libpq/pqcomm.c | 6 | ||||
-rw-r--r-- | src/backend/utils/error/assert.c | 4 |
2 files changed, 5 insertions, 5 deletions
diff --git a/src/backend/libpq/pqcomm.c b/src/backend/libpq/pqcomm.c index dcd99cbe1b4..c0fa810e379 100644 --- a/src/backend/libpq/pqcomm.c +++ b/src/backend/libpq/pqcomm.c @@ -7,7 +7,7 @@ * * * IDENTIFICATION - * $Header: /cvsroot/pgsql/src/backend/libpq/pqcomm.c,v 1.15 1997/04/16 06:25:13 vadim Exp $ + * $Header: /cvsroot/pgsql/src/backend/libpq/pqcomm.c,v 1.16 1997/04/17 20:38:16 scrappy Exp $ * *------------------------------------------------------------------------- */ @@ -303,10 +303,10 @@ pq_getint(int b) status = ((n = fgetc(Pfin)) == EOF); break; case 2: - pqGetShort(&n, Pfin); + status = pqGetShort(&n, Pfin); break; case 4: - pqGetLong(&n, Pfin); + status = pqGetLong(&n, Pfin); break; default: fprintf(stderr, "** Unsupported size %d\n", b); diff --git a/src/backend/utils/error/assert.c b/src/backend/utils/error/assert.c index bdc4f0b0e39..4fb99ced1b9 100644 --- a/src/backend/utils/error/assert.c +++ b/src/backend/utils/error/assert.c @@ -7,7 +7,7 @@ * * * IDENTIFICATION - * $Header: /cvsroot/pgsql/src/backend/utils/error/assert.c,v 1.3 1996/11/11 11:49:40 scrappy Exp $ + * $Header: /cvsroot/pgsql/src/backend/utils/error/assert.c,v 1.4 1997/04/17 20:38:26 scrappy Exp $ * * NOTE * This should eventually work with elog(), dlog(), etc. @@ -46,7 +46,7 @@ ExceptionalCondition(char* conditionName, } else { fprintf(stderr, "%s(\"%s:%s\", File: \"%s\", Line: %d)\n", - exceptionP->message, conditionName, detail, + exceptionP->message, conditionName, detail == NULL ? "" : detail, fileName, lineNumber); } |