_SPI_cursor_operation forgot to check for failure return from
_SPI_begin_call. Per gripe from Tomasz Myrta.
This commit is contained in:
parent
5a5f0a6168
commit
267924ead8
@ -8,7 +8,7 @@
|
|||||||
*
|
*
|
||||||
*
|
*
|
||||||
* IDENTIFICATION
|
* IDENTIFICATION
|
||||||
* $Header: /cvsroot/pgsql/src/backend/executor/spi.c,v 1.104 2003/09/16 00:50:09 tgl Exp $
|
* $Header: /cvsroot/pgsql/src/backend/executor/spi.c,v 1.105 2003/09/23 15:11:33 tgl Exp $
|
||||||
*
|
*
|
||||||
*-------------------------------------------------------------------------
|
*-------------------------------------------------------------------------
|
||||||
*/
|
*/
|
||||||
@ -1270,7 +1270,8 @@ _SPI_cursor_operation(Portal portal, bool forward, int count,
|
|||||||
elog(ERROR, "invalid portal in SPI cursor operation");
|
elog(ERROR, "invalid portal in SPI cursor operation");
|
||||||
|
|
||||||
/* Push the SPI stack */
|
/* Push the SPI stack */
|
||||||
_SPI_begin_call(true);
|
if (_SPI_begin_call(true) < 0)
|
||||||
|
elog(ERROR, "SPI cursor operation called while not connected");
|
||||||
|
|
||||||
/* Reset the SPI result */
|
/* Reset the SPI result */
|
||||||
SPI_processed = 0;
|
SPI_processed = 0;
|
||||||
@ -1320,8 +1321,7 @@ _SPI_procmem()
|
|||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* _SPI_begin_call
|
* _SPI_begin_call: begin a SPI operation within a connected procedure
|
||||||
*
|
|
||||||
*/
|
*/
|
||||||
static int
|
static int
|
||||||
_SPI_begin_call(bool execmem)
|
_SPI_begin_call(bool execmem)
|
||||||
@ -1338,6 +1338,11 @@ _SPI_begin_call(bool execmem)
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* _SPI_end_call: end a SPI operation within a connected procedure
|
||||||
|
*
|
||||||
|
* Note: this currently has no failure return cases, so callers don't check
|
||||||
|
*/
|
||||||
static int
|
static int
|
||||||
_SPI_end_call(bool procmem)
|
_SPI_end_call(bool procmem)
|
||||||
{
|
{
|
||||||
|
Loading…
x
Reference in New Issue
Block a user