Merge branch 'backport-1085-xdgmime-glib-2-62' into 'glib-2-62'

Backport !1085 “xdgmime: Prevent infinite loops from badly-formed MIME registrations” to glib-2-62

See merge request GNOME/glib!1103
This commit is contained in:
Sebastian Dröge 2019-09-13 13:58:26 +00:00
commit e2e51082be

View File

@ -965,7 +965,9 @@ _xdg_mime_cache_mime_type_subclass (const char *mime,
for (j = 0; j < n_parents; j++)
{
parent_offset = GET_UINT32 (cache->buffer, offset + 4 + 4 * j);
if (_xdg_mime_cache_mime_type_subclass (cache->buffer + parent_offset, ubase))
if (strcmp (cache->buffer + parent_offset, mime) != 0 &&
strcmp (cache->buffer + parent_offset, umime) != 0 &&
_xdg_mime_cache_mime_type_subclass (cache->buffer + parent_offset, ubase))
return 1;
}