diff --git a/gio/gthreadedresolver.c b/gio/gthreadedresolver.c index 7691b9124..8fb70366d 100644 --- a/gio/gthreadedresolver.c +++ b/gio/gthreadedresolver.c @@ -615,7 +615,7 @@ parse_res_txt (guchar *answer, while (at < end) { len = *(at++); - if (len > at - end) + if (len > (gsize) (end - at)) break; g_ptr_array_add (array, g_strndup ((gchar *)at, len)); at += len;