mirror of
https://gitlab.gnome.org/GNOME/glib.git
synced 2025-01-23 20:46:14 +01:00
xdgmime: Prevent infinite loops from badly-formed MIME registrations
Signed-off-by: Philip Withnall <withnall@endlessm.com> Closes: #1875
This commit is contained in:
parent
fa6f45536d
commit
38869ece24
@ -966,7 +966,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;
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user