@@ -90,7 +90,7 @@ pub unsafe fn init_os_handler(overwrite: bool) -> Result<(), Error> {
9090 signal:: SigAction :: new ( handler, signal:: SaFlags :: empty ( ) , signal:: SigSet :: empty ( ) ) ;
9191
9292 let sigint_old = signal:: sigaction ( signal:: Signal :: SIGINT , & new_action) ?;
93- if !overwrite && sigint_old. handler ( ) != signal:: SigHandler :: SigDfl {
93+ if !overwrite && ! matches ! ( sigint_old. handler( ) , signal:: SigHandler :: SigDfl ) {
9494 signal:: sigaction ( signal:: Signal :: SIGINT , & sigint_old) . unwrap ( ) ;
9595 return Err ( nix:: Error :: EEXIST ) ;
9696 }
@@ -104,7 +104,7 @@ pub unsafe fn init_os_handler(overwrite: bool) -> Result<(), Error> {
104104 return Err ( e) ;
105105 }
106106 } ;
107- if !overwrite && sigterm_old. handler ( ) != signal:: SigHandler :: SigDfl {
107+ if !overwrite && ! matches ! ( sigterm_old. handler( ) , signal:: SigHandler :: SigDfl ) {
108108 signal:: sigaction ( signal:: Signal :: SIGINT , & sigint_old) . unwrap ( ) ;
109109 signal:: sigaction ( signal:: Signal :: SIGTERM , & sigterm_old) . unwrap ( ) ;
110110 return Err ( nix:: Error :: EEXIST ) ;
@@ -117,7 +117,7 @@ pub unsafe fn init_os_handler(overwrite: bool) -> Result<(), Error> {
117117 return Err ( e) ;
118118 }
119119 } ;
120- if !overwrite && sighup_old. handler ( ) != signal:: SigHandler :: SigDfl {
120+ if !overwrite && ! matches ! ( sighup_old. handler( ) , signal:: SigHandler :: SigDfl ) {
121121 signal:: sigaction ( signal:: Signal :: SIGINT , & sigint_old) . unwrap ( ) ;
122122 signal:: sigaction ( signal:: Signal :: SIGTERM , & sigterm_old) . unwrap ( ) ;
123123 signal:: sigaction ( signal:: Signal :: SIGHUP , & sighup_old) . unwrap ( ) ;
0 commit comments