This hopefully fixes #42 (closed).
I can't be sure if it fixes it as we didn't manage to reproduce the issue in a sure way.
To test it and be confident it should solve the issue, I added this at the top of
if (callback == gtk_widget_destroy) g_assert (priv->children == NULL);
Without the fix, the assertion is always false, and with it it seems to only be true, so it should work.