logsource.c: substracting signed from unsigned will result in an unsigned
value that cannot be smaller than 0
test_window_size_counter.c: this test should have NEVER worked,
window_size_counter always strips highest bit from the value.
It passed by accident on 64 bit, because the cast was narrowing
type from long (64 bit) to int (32 bit) (both long and int are 32
bit on 32 bit archs).
On a side note, the whole syslog-ng code is super brittle. It's mixing
signed and unsigned in arithmetics, mixing differently sized integers
all over the place. It's just an accident waiting to happen.