Web lists-archives.com

Re: Problem with 'gio/gwin32appinfo.c'

On 15.06.2015 19:57, John Emmas wrote:
> Just querying a new MSVC build problem after updating today from git 
> master.  This is a different issue from the one I reported earlier with 
> 'read_resource_string()'
> 'gio/gwin32appinfo.c' used to contain the following 4 x functions:-
>        g_app_info_get_all_for_type()
>        g_app_info_get_fallback_for_type()
>        g_app_info_get_recommended_for_type()
>        g_app_info_reset_type_associations()
> After today's update they all seem to be missing now (and as such, the 
> linker reports them as unresolved symbols).  However, I can't see 
> anything in the git log to suggest when (or why) they got removed.  Have 
> they been moved somewhere else or has something gone wrong with my 
> update today??

These functions were not implemented during the w32 appinfo rewrite.

IIRC, i haven't tried to implement them because it was not immediately
clear how they should be implemented.

First three (get_*_for_type) return X + Y, X and Y respectedly, where X is
the list of apps that support a MIME/type specifically, and Y is the list
of apps that support a MIME/type as a result of MIME/type subclassing. This
is somewhat a mess, because content type support on W32 is inadequate
(there's a bug for that, still in progress), so i just paid them no attention.

g_app_info_get_recommended_for_type() and
g_app_info_get_fallback_for_type() were dummies that called

It might be possible to quickly hack together an
g_app_info_get_all_for_type() implementation by pretending that content
type is an extension (it still is, until content type support bug is
resolved), pulling appropriate record from the "GHashTable *extensions",
reading the ->handlers hashtable and making appinfo objects from its
contents; also maybe reading the ->other_apps hashtable and doing the same.
Such implementation will be roughly as good as the old one was.

g_app_info_reset_type_associations() undoes things that some other APIs do.
Since these APIs are not implemented, g_app_info_reset_type_associations()
is not implemented either. Previously g_app_info_reset_type_associations()
was a dummy, now it's just missing.

O< ascii ribbon - stop html email! - www.asciiribbon.org

Attachment: 0x922360B0.asc
Description: application/pgp-keys

Attachment: signature.asc
Description: OpenPGP digital signature

gtk-devel-list mailing list