C<foo I<bar>> hunks from <20011019014551.A35625@not.autrijus.org>.
[p5sagit/p5-mst-13.2.git] / miniperlmain.c
index 2c924eb..f92ea3e 100644 (file)
@@ -48,7 +48,7 @@ main(int argc, char **argv, char **env)
 
     PERL_SYS_INIT3(&argc,&argv,&env);
 
-#if defined(USE_THREADS) || defined(USE_ITHREADS)
+#if defined(USE_5005THREADS) || defined(USE_ITHREADS)
     /* XXX Ideally, this should really be happening in perl_alloc() or
      * perl_construct() to keep libperl.a transparently fork()-safe.
      * It is currently done here only because Apache/mod_perl have
@@ -70,13 +70,13 @@ main(int argc, char **argv, char **env)
        perl_construct(my_perl);
        PL_perl_destruct_level = 0;
     }
-
+    PL_exit_flags |= PERL_EXIT_DESTRUCT_END;
     exitstatus = perl_parse(my_perl, xs_init, argc, argv, (char **)NULL);
-    if (!exitstatus) {
-       exitstatus = perl_run(my_perl);
-    }
+    if (!exitstatus)
+        perl_run(my_perl);
+      
+    exitstatus = perl_destruct(my_perl);
 
-    perl_destruct(my_perl);
     perl_free(my_perl);
 
     PERL_SYS_TERM();