Fix sigaction.sa_flags type: c_int -> c_ulong
nix 0.30.1 expects SaFlags_t = c_ulong for target_os = "redox" (see nix-0.30.1/src/sys/signal.rs:430). Our relibc had c_int, causing type mismatch errors in uutils and any nix-dependent crate. Align with nix's expectation.
This commit is contained in:
@@ -127,7 +127,7 @@ impl PalSignal for Sys {
|
||||
SigactionKind::Ignore
|
||||
} else {
|
||||
SigactionKind::Handled {
|
||||
handler: if c_act.sa_flags & crate::header::signal::SA_SIGINFO as c_int != 0 {
|
||||
handler: if c_act.sa_flags & crate::header::signal::SA_SIGINFO as c_ulong != 0 {
|
||||
SignalHandler {
|
||||
sigaction: unsafe { core::mem::transmute(c_act.sa_handler) },
|
||||
}
|
||||
@@ -170,7 +170,7 @@ impl PalSignal for Sys {
|
||||
unsafe { handler.handler }
|
||||
},
|
||||
sa_restorer: None,
|
||||
sa_flags: old_action.flags.bits() as c_int,
|
||||
sa_flags: old_action.flags.bits() as c_ulong,
|
||||
sa_mask: old_action.mask,
|
||||
},
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user