wayland: Compare serial numbers correctly to avoid overflow problems

We have to look at the difference between two numbers, which will always
be well-defined and give the right result, even in case of integer overflow.
This commit is contained in:
Kristian Høgsberg 2013-08-23 23:08:13 -07:00
parent 384a4e6ddb
commit 771dbe0592

View File

@ -678,8 +678,12 @@ void
_gdk_wayland_display_update_serial (GdkWaylandDisplay *wayland_display,
guint32 serial)
{
if (serial > wayland_display->serial)
if (serial - wayland_display->serial < 1000)
wayland_display->serial = serial;
else
g_warning (G_STRLOC ": serial number jump bigger than 1000 (%u -> %u",
wayland_display->serial, serial);
}
/**