/**********************************************************************
* plperl.c - perl as a procedural language for PostgreSQL
*
- * $PostgreSQL: pgsql/src/pl/plperl/plperl.c,v 1.146 2009/02/20 10:39:19 petere Exp $
+ * $PostgreSQL: pgsql/src/pl/plperl/plperl.c,v 1.147 2009/06/04 15:59:55 adunstan Exp $
*
**********************************************************************/
"", "-e", PERLBOOT
};
+ int nargs = 3;
+
#ifdef WIN32
/*
#endif
+#ifdef PERL_SYS_INIT3
+ /* only call this the first time through, as per perlembed man page */
+ if (interp_state == INTERP_NONE)
+ PERL_SYS_INIT3(&nargs, (char ***) &embedding, NULL);
+#endif
+
plperl_held_interp = perl_alloc();
if (!plperl_held_interp)
elog(ERROR, "could not allocate Perl interpreter");
perl_construct(plperl_held_interp);
perl_parse(plperl_held_interp, plperl_init_shared_libs,
- 3, embedding, NULL);
+ nargs, embedding, NULL);
perl_run(plperl_held_interp);
if (interp_state == INTERP_NONE)