> Surely this fix is completely wrong? You'd have to touch every use of
> signum() to do it like that. You'd also be introducing similarly-
> undefined behavior at the other end of the loop, where this coding
> would be asking to compute 1<<31, hence shifting into the sign bit,
> which is undefined unless you make the computation explicitly
> unsigned.
Oh, I didn't think about that...
> I think better is just to change the for-loop to iterate from 1 not 0.
> Signal 0 is invalid anyway, and is rejected in pg_queue_signal for
> example, so there can't be any event waiting there.
Agreed.
--
Best regards,
Aleksander Alekseev
http://eax.me/