Re: BUG #3415: plperl spi_exec_prepared variable undef value confusion

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: "Matt" <matt(at)lindenelevator(dot)com>
Cc: pgsql-bugs(at)postgresql(dot)org, Andrew Dunstan <andrew(at)dunslane(dot)net>
Subject: Re: BUG #3415: plperl spi_exec_prepared variable undef value confusion
Date: 2007-06-28 16:46:24
Message-ID: 14451.1183049184@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-bugs

I wrote:
> [ pokes at it ... ] Some of the places in plperl.c that are checking for
> undef values use code like

> if (SvOK(val) && SvTYPE(val) != SVt_NULL)

> and some just test the SvTYPE part. It looks to me like the SvOK test
> is essential --- in fact I'm not sure the SvTYPE test is even bringing
> anything to the party. Any perl-extension gurus around here?

Google turned up this comp.lang.perl.misc thread:
http://www.dbforums.com/showthread.php?s=6aaf30de92e7732ff45d667075f997bf&t=1071763
which seems to establish pretty conclusively that SvOK() is *the* way
to check for defined-ness, and the SVt_NULL test is wrong as well as
useless. So barring objections, I'll go make the code do it that way.

regards, tom lane

In response to

Browse pgsql-bugs by date

  From Date Subject
Next Message Andrew Dunstan 2007-06-28 16:55:09 Re: BUG #3415: plperl spi_exec_prepared variable undef value confusion
Previous Message Tom Lane 2007-06-28 16:34:03 Re: BUG #3415: plperl spi_exec_prepared variable undef value confusion