diff options
author | peter <peter@FreeBSD.org> | 2003-06-02 21:59:13 +0000 |
---|---|---|
committer | peter <peter@FreeBSD.org> | 2003-06-02 21:59:13 +0000 |
commit | 58b9cc83ad08e252efdd2bb1ef346696aaec625a (patch) | |
tree | 45850e0e87cf82ae182eda9ad91eb5d73a53ab67 /lib/libc | |
parent | 54294f1739a4b46f029cab4511f55cd9eba1b196 (diff) | |
download | FreeBSD-src-58b9cc83ad08e252efdd2bb1ef346696aaec625a.zip FreeBSD-src-58b9cc83ad08e252efdd2bb1ef346696aaec625a.tar.gz |
Fix sigsetjmp(). It helps if we do not try to save the old signal mask
to a random memory location. Perl works a lot better with this.
Diffstat (limited to 'lib/libc')
-rw-r--r-- | lib/libc/amd64/gen/sigsetjmp.S | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/lib/libc/amd64/gen/sigsetjmp.S b/lib/libc/amd64/gen/sigsetjmp.S index 6795307..94e1578 100644 --- a/lib/libc/amd64/gen/sigsetjmp.S +++ b/lib/libc/amd64/gen/sigsetjmp.S @@ -62,6 +62,7 @@ ENTRY(sigsetjmp) testl %esi,%esi jz 2f pushq %rdi + movq %rdi,%rcx movq $1,%rdi /* SIG_BLOCK */ movq $0,%rsi /* (sigset_t*)set */ leaq 72(%rcx),%rdx /* (sigset_t*)oset */ |