GContentType usage on win32
Hi,
Since commit e387f807 ("Improve GContentType usage"), g_content_type_from_mime_type()
is called on the mime types before calling g_content_type_is_a()
. While it is more correct, it also breaks existing applications.
The way g_content_type_from_mime_type()
works on win32, is via a registry lookup, which returns the associated extension if the mime type is known or NULL.
In the most simplest version g_content_type_is_a()
is simply a string comparison.
Before that commit, an unregistered MIME type would be successfully compared.
After the commit, the comparison can't happen with NULL return values. Furthermore, there are some pre-condition criticals from gtk/gtkrecentfilter.c, since NULL isn't checked before calling g_content_type_is_a()
.
Either we consider this a regression, and use a simple fallback to compare mime_type directly when g_content_type_from_mime_type()
fails, or we should close as wontfix and blame the existing applications that rely on unregistered mime types.
Fwiw, even testrecentchooser.exe fails on my Windows machine, since 'application/pdf' isn't a registered MIME type...