From 4279879c9847ca069527e11ca934b8906009cad8 Mon Sep 17 00:00:00 2001 From: Rusty Russell Date: Wed, 26 Aug 2009 17:30:32 +0930 Subject: lib/tevent: remove spectacularly complicated manual subtraction To be completely honest, I don't quite know whether to laugh or cry at this one: 1 + (0xFFFFFFFF & ~(s.seen - s.count)) == 1 + (~(s.seen - s.count)) # s.seen, s.count are uint32_t == s.count - s.seen # -A == ~A + 1 Signed-off-by: Rusty Russell --- lib/tevent/tevent_signal.c | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) (limited to 'lib') diff --git a/lib/tevent/tevent_signal.c b/lib/tevent/tevent_signal.c index f07de83a5e..429995318b 100644 --- a/lib/tevent/tevent_signal.c +++ b/lib/tevent/tevent_signal.c @@ -70,10 +70,7 @@ static struct sig_state { */ static uint32_t sig_count(struct sigcounter s) { - if (s.count >= s.seen) { - return s.count - s.seen; - } - return 1 + (0xFFFFFFFF & ~(s.seen - s.count)); + return s.count - s.seen; } /* -- cgit