summaryrefslogtreecommitdiff
path: root/pp_sys.c
diff options
context:
space:
mode:
authorFather Chrysostomos <sprout@cpan.org>2011-08-27 18:40:05 -0700
committerFather Chrysostomos <sprout@cpan.org>2011-08-27 23:37:48 -0700
commit0da4a804fef07340c6c2f7617fcf7ed884cea7ae (patch)
treee9bec520d3a37b787f28d1f86da083b4c7fefa2a /pp_sys.c
parent29475144d546bc21d52fcc452ac0a8d41d3b7d7d (diff)
downloadperl-0da4a804fef07340c6c2f7617fcf7ed884cea7ae.tar.gz
&CORE::sleep()
This commit allows &CORE::sleep to be called through references and via ampersand syntax. pp_sleep is modified to take into account the nulls pushed on to the stack in pp_coreargs, which happens because pp_coreargs has no other way to tell sleep how many arguments it’s actually getting. See commit 0163043a for details. Unfortunately, sleep with no args is nearly impossible to test porta- bly. But I have checked that it works.
Diffstat (limited to 'pp_sys.c')
-rw-r--r--pp_sys.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/pp_sys.c b/pp_sys.c
index 6737845e34..747fd7806d 100644
--- a/pp_sys.c
+++ b/pp_sys.c
@@ -4579,7 +4579,7 @@ PP(pp_sleep)
Time_t when;
(void)time(&lasttime);
- if (MAXARG < 1)
+ if (MAXARG < 1 || (!TOPs && !POPs))
PerlProc_pause();
else {
duration = POPi;