mirror of https://github.com/GNOME/gimp.git
app: add comment about why we can't use GimpContainerView API in init()
This commit is contained in:
parent
3c565a1736
commit
403908829a
|
@ -105,6 +105,18 @@ gimp_container_box_constructed (GObject *object)
|
|||
{
|
||||
GimpContainerBox *box = GIMP_CONTAINER_BOX (object);
|
||||
|
||||
/* This is evil: the hash table of "insert_data" is created on
|
||||
* demand when GimpContainerView API is used, using a
|
||||
* value_free_func that is set in the interface_init functions of
|
||||
* its implementors. Therefore, no GimpContainerView API must be
|
||||
* called from any init() function, because the interface_init()
|
||||
* function of a subclass that sets the right value_free_func might
|
||||
* not have been called yet, leaving the insert_data hash table
|
||||
* without memory management.
|
||||
*
|
||||
* Call GimpContainerView API from GObject::constructed() instead,
|
||||
* which runs after everything is set up correctly.
|
||||
*/
|
||||
gimp_container_view_set_dnd_widget (GIMP_CONTAINER_VIEW (box),
|
||||
box->scrolled_win);
|
||||
|
||||
|
|
Loading…
Reference in New Issue