From 12f9316a9cdc5c3f260202173f6adb236f06eaa1 Mon Sep 17 00:00:00 2001 From: Tom Lane Date: Tue, 12 Jul 2005 20:35:42 +0000 Subject: [PATCH] Fix plperl crash with list value return for an array result type. Reported by Michael Fuhr, fixed by Andrew Dunstan. --- src/pl/plperl/plperl.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/pl/plperl/plperl.c b/src/pl/plperl/plperl.c index a86ef8d64f..3282493808 100644 --- a/src/pl/plperl/plperl.c +++ b/src/pl/plperl/plperl.c @@ -1020,8 +1020,8 @@ plperl_func_handler(PG_FUNCTION_ARGS) /* Return a perl string converted to a Datum */ char *val; - - if (prodesc->fn_retisarray && SvTYPE(SvRV(perlret)) == SVt_PVAV) + if (prodesc->fn_retisarray && SvROK(perlret) && + SvTYPE(SvRV(perlret)) == SVt_PVAV) { array_ret = plperl_convert_to_pg_array(perlret); SvREFCNT_dec(perlret); -- 2.39.5