summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--mg.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/mg.c b/mg.c
index 69bb521363..ea15875215 100644
--- a/mg.c
+++ b/mg.c
@@ -29,6 +29,10 @@
# endif
#endif
+#ifdef __hpux
+# include <sys/pstat.h>
+#endif
+
/* if you only have signal() and it resets on each signal, FAKE_PERSISTENT_SIGNAL_HANDLERS fixes */
#if !defined(HAS_SIGACTION) && defined(VMS)
# define FAKE_PERSISTENT_SIGNAL_HANDLERS
@@ -2232,6 +2236,14 @@ Perl_magic_set(pTHX_ SV *sv, MAGIC *mg)
# endif
}
#endif
+#if defined(__hpux) && defined(PSTAT_SETCMD)
+ {
+ union pstun un;
+ s = SvPV(sv, len);
+ un.pst_command = s;
+ pstat(PSTAT_SETCMD, un, len, 0, 0);
+ }
+#endif
if (!PL_origalen) {
s = PL_origargv[0];
s += strlen(s);