summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Leadbeater <dgl@dgl.cx>2011-03-07 18:45:09 +0000
committerNicholas Clark <nick@ccl4.org>2011-03-28 10:21:47 +0100
commit01d65469392dfc0a9e7a9b5a1a7770e9306b9213 (patch)
tree98fcd6031bc4e7a23999d5e9facec2cdd09eee9a
parenta82b5f080d91ffe184d8ac4795ac71e72e612c2f (diff)
downloadperl-01d65469392dfc0a9e7a9b5a1a7770e9306b9213.tar.gz
Microperl doesn't do signal handlers, ifdef some handling code
-rw-r--r--intrpvar.h2
-rw-r--r--miniperlmain.c2
2 files changed, 4 insertions, 0 deletions
diff --git a/intrpvar.h b/intrpvar.h
index 32a013af67..824bf20820 100644
--- a/intrpvar.h
+++ b/intrpvar.h
@@ -708,7 +708,9 @@ PERLVARI(Iunlockhook, share_proc_t, PERL_UNLOCK_HOOK)
PERLVARI(Ithreadhook, thrhook_proc_t, Perl_nothreadhook)
+#ifndef PERL_MICRO
PERLVARI(Isignalhook, despatch_signals_proc_t, Perl_despatch_signals)
+#endif
PERLVARI(Ihash_seed, UV, 0) /* Hash initializer */
diff --git a/miniperlmain.c b/miniperlmain.c
index 59d79b0b99..401af10a2f 100644
--- a/miniperlmain.c
+++ b/miniperlmain.c
@@ -118,12 +118,14 @@ main(int argc, char **argv, char **env)
if (!exitstatus)
perl_run(my_perl);
+#ifndef PERL_MICRO
/* Unregister our signal handler before destroying my_perl */
for (i = 0; PL_sig_name[i]; i++) {
if (rsignal_state(PL_sig_num[i]) == (Sighandler_t) PL_csighandlerp) {
rsignal(PL_sig_num[i], (Sighandler_t) SIG_DFL);
}
}
+#endif
exitstatus = perl_destruct(my_perl);