We can change the data type for 'size' but we have to cast len to size_t
for the comparisons with sizeof results.
WL_EXPORT void
wl_display_iterate(struct wl_display *display, uint32_t mask)
{
- uint32_t p[2], object, opcode, size;
- int len;
+ uint32_t p[2], object;
+ int len, opcode, size;
mask &= display->mask;
if (mask == 0) {
len = wl_connection_data(display->connection, mask);
while (len > 0) {
- if (len < sizeof p)
+ if ((size_t) len < sizeof p)
break;
wl_connection_copy(display->connection, p, sizeof p);
return 1;
}
- while (len >= sizeof p) {
+ while ((size_t) len >= sizeof p) {
wl_connection_copy(connection, p, sizeof p);
opcode = p[1] & 0xffff;
size = p[1] >> 16;