Make purple_blist_load() static (#3288) - necessary?
Jay Goel
jpgoel at ncsu.edu
Sun Mar 9 21:41:50 EDT 2008
That makes sense; in fact, if ui_init() is not called first, then pidgin
will segfault.
However, the patch actually changes when the blist is initialized.
libpurple/core.c now looks like:
purple_core_init(const char *ui)
{
/* lots of code */
/*
* We need to initialize the UI before trying to create the buddy list.
*/
if (ops != NULL && ops->ui_init != NULL)
ops->ui_init();
purple_blist_init();
}
(a bit of an eyesore, but that problem is taken care of - unless I have
missed the mark?)
Jay
Evan Schoenberg wrote, On 03/09/2008 02:13 PM:
>
> I would be okay with this being done automatically, but I do
> /not/ think that it should happen within blist_init(). The UI has had
> no chance to perform its own initialization or to associate any of its
> data with libpurple structures. This means that the flood of
> information from loading the blist (buddies added to groups, aliases
> set, etc. as blist.xml is loaded) may have nowhere to go.
>
> I think that a second call into the blist module should be made
> /after/ ops->ui_init() is called, along the lines of
> blist_finish_initing(). Seem reasonable?
>
> Thanks for bringing this up on-list.
>
> -Evan
More information about the Devel
mailing list