Fix SIGSEGV crash due to wrong use of perl_parse()

Patch by Charles Pigott <cpigott@rapitasystems.com>.

git-svn-id: https://svn.apache.org/repos/asf/perl/modperl/trunk@1886793 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/src/modules/perl/modperl_config.c b/src/modules/perl/modperl_config.c
index 65afb6a..6603065 100644
--- a/src/modules/perl/modperl_config.c
+++ b/src/modules/perl/modperl_config.c
@@ -163,7 +163,8 @@
     scfg->PerlPostConfigRequire =
         apr_array_make(p, 1, sizeof(modperl_require_file_t *));
 
-    scfg->argv = apr_array_make(p, 2, sizeof(char *));
+    /* 2 arguments + NULL terminator */
+    scfg->argv = apr_array_make(p, 3, sizeof(char *));
 
     scfg->setvars = apr_table_make(p, 2);
     scfg->configvars = apr_table_make(p, 2);
@@ -219,6 +220,9 @@
 
     *argc = scfg->argv->nelts;
 
+    /* perl_parse() expects a NULL terminated argv array */
+    modperl_config_srv_argv_push(NULL);
+
     MP_TRACE_g_do(dump_argv(scfg));
 
     return (char **)scfg->argv->elts;