1
0
mirror of https://github.com/postgres/postgres.git synced 2025-04-24 10:47:04 +03:00

Fix incorrect test for whether Perl code is returning undef. This

allows plperl routines to return NULL as intended.
This commit is contained in:
Tom Lane 2002-01-24 16:53:42 +00:00
parent 386f1809a7
commit a45641d8a4

View File

@ -33,7 +33,7 @@
* ENHANCEMENTS, OR MODIFICATIONS. * ENHANCEMENTS, OR MODIFICATIONS.
* *
* IDENTIFICATION * IDENTIFICATION
* $Header: /cvsroot/pgsql/src/pl/plperl/plperl.c,v 1.26 2001/11/05 17:46:39 momjian Exp $ * $Header: /cvsroot/pgsql/src/pl/plperl/plperl.c,v 1.27 2002/01/24 16:53:42 tgl Exp $
* *
**********************************************************************/ **********************************************************************/
@ -488,9 +488,9 @@ plperl_func_handler(PG_FUNCTION_ARGS)
if (SPI_finish() != SPI_OK_FINISH) if (SPI_finish() != SPI_OK_FINISH)
elog(ERROR, "plperl: SPI_finish() failed"); elog(ERROR, "plperl: SPI_finish() failed");
/* XXX is this the approved way to check for an undef result? */ if (!(perlret && SvOK(perlret)))
if (perlret == &PL_sv_undef)
{ {
/* return NULL if Perl code returned undef */
retval = (Datum) 0; retval = (Datum) 0;
fcinfo->isnull = true; fcinfo->isnull = true;
} }