diff options
Diffstat (limited to 'otherlibs/unix/signals.c')
-rw-r--r-- | otherlibs/unix/signals.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/otherlibs/unix/signals.c b/otherlibs/unix/signals.c index b244f8af6..c388b1393 100644 --- a/otherlibs/unix/signals.c +++ b/otherlibs/unix/signals.c @@ -24,7 +24,7 @@ #include "unixsupport.h" #ifndef NSIG -#define NSIG 32 +#define NSIG 64 #endif #ifdef POSIX_SIGNALS @@ -33,7 +33,7 @@ static void decode_sigset(value vset, sigset_t * set) { sigemptyset(set); while (vset != Val_int(0)) { - int sig = convert_signal_number(Int_val(Field(vset, 0))); + int sig = caml_convert_signal_number(Int_val(Field(vset, 0))); sigaddset(set, sig); vset = Field(vset, 1); } @@ -46,9 +46,9 @@ static value encode_sigset(sigset_t * set) Begin_root(res) for (i = 1; i < NSIG; i++) - if (sigismember(set, i)) { + if (sigismember(set, i) > 0) { value newcons = alloc_small(2, 0); - Field(newcons, 0) = Val_int(i); + Field(newcons, 0) = Val_int(caml_rev_convert_signal_number(i)); Field(newcons, 1) = res; res = newcons; } |