mirror of
https://github.com/cc65/cc65.git
synced 2025-02-07 04:31:38 +00:00
Reset signal handler to SIG_DFL on a call to raise()
git-svn-id: svn://svn.cc65.org/cc65/trunk@2018 b7a2c559-68d2-44c3-8de9-860c34a00d81
This commit is contained in:
parent
c556f14e66
commit
722581ecee
@ -28,6 +28,15 @@ _raise:
|
|||||||
sta jmpvec+1
|
sta jmpvec+1
|
||||||
lda sigtable+1,x
|
lda sigtable+1,x
|
||||||
sta jmpvec+2
|
sta jmpvec+2
|
||||||
|
|
||||||
|
; Reset the signal handler to SIG_DFL (I don't like this because it may
|
||||||
|
; introduce race conditions, but it's the simplest way to satisfy the
|
||||||
|
; standard).
|
||||||
|
|
||||||
|
lda #<__sig_dfl
|
||||||
|
sta sigtable,x
|
||||||
|
lda #>__sig_dfl
|
||||||
|
sta sigtable+1,x
|
||||||
|
|
||||||
; Restore the signal number and call the function
|
; Restore the signal number and call the function
|
||||||
|
|
||||||
@ -42,3 +51,4 @@ _raise:
|
|||||||
invalidsig:
|
invalidsig:
|
||||||
rts
|
rts
|
||||||
|
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user