1
0
mirror of https://github.com/postgres/postgres.git synced 2025-07-05 07:21:24 +03:00

Currently, nonfatal warnings are not trapped (as they should be) by

plperl - the attached small patch remedies that omission.

Andrew Dunstan
This commit is contained in:
Bruce Momjian
2005-07-06 22:33:39 +00:00
parent 970bb03c3c
commit 77838f7380
2 changed files with 7 additions and 3 deletions

View File

@ -1,5 +1,5 @@
# Makefile for PL/Perl # Makefile for PL/Perl
# $PostgreSQL: pgsql/src/pl/plperl/GNUmakefile,v 1.22 2005/05/24 17:07:41 tgl Exp $ # $PostgreSQL: pgsql/src/pl/plperl/GNUmakefile,v 1.23 2005/07/06 22:33:39 momjian Exp $
subdir = src/pl/plperl subdir = src/pl/plperl
top_builddir = ../../.. top_builddir = ../../..
@ -37,7 +37,7 @@ OBJS = plperl.o spi_internal.o SPI.o
SHLIB_LINK = $(perl_embed_ldflags) $(BE_DLLLIBS) SHLIB_LINK = $(perl_embed_ldflags) $(BE_DLLLIBS)
REGRESS_OPTS = --dbname=$(PL_TESTDB) --load-language=plperl REGRESS_OPTS = --dbname=$(PL_TESTDB) --load-language=plperl
REGRESS = plperl plperl_trigger plperl_shared REGRESS = plperl plperl_trigger plperl_shared plperl_elog
include $(top_srcdir)/src/Makefile.shlib include $(top_srcdir)/src/Makefile.shlib

View File

@ -33,7 +33,7 @@
* ENHANCEMENTS, OR MODIFICATIONS. * ENHANCEMENTS, OR MODIFICATIONS.
* *
* IDENTIFICATION * IDENTIFICATION
* $PostgreSQL: pgsql/src/pl/plperl/plperl.c,v 1.79 2005/07/03 21:56:16 tgl Exp $ * $PostgreSQL: pgsql/src/pl/plperl/plperl.c,v 1.80 2005/07/06 22:33:39 momjian Exp $
* *
**********************************************************************/ **********************************************************************/
@ -190,6 +190,8 @@ plperl_init_interp(void)
"", "-e", "", "-e",
/* all one string follows (no commas please) */ /* all one string follows (no commas please) */
"SPI::bootstrap(); use vars qw(%_SHARED);" "SPI::bootstrap(); use vars qw(%_SHARED);"
"sub ::plperl_warn { my $msg = shift; &elog(&NOTICE, $msg); } "
"$SIG{__WARN__} = \\&::plperl_warn; "
"sub ::mkunsafefunc {return eval(qq[ sub { $_[0] $_[1] } ]); }" "sub ::mkunsafefunc {return eval(qq[ sub { $_[0] $_[1] } ]); }"
}; };
@ -197,6 +199,8 @@ plperl_init_interp(void)
"", "-e", "", "-e",
/* all one string follows (no commas please) */ /* all one string follows (no commas please) */
"SPI::bootstrap(); use vars qw(%_SHARED);" "SPI::bootstrap(); use vars qw(%_SHARED);"
"sub ::plperl_warn { my $msg = shift; &elog(&NOTICE, $msg); } "
"$SIG{__WARN__} = \\&::plperl_warn; "
"sub ::mkunsafefunc {return eval(" "sub ::mkunsafefunc {return eval("
"qq[ sub { use strict; $_[0] $_[1] } ]); }" "qq[ sub { use strict; $_[0] $_[1] } ]); }"
}; };