Hello,
Mike Massonnet <mmasson...@...> writes:
> As of bug #577048[1], the functions add_full and add_seconds_full from
> Timeout do no more take a manual DestroyNotify? notify. The bug report
> says that they are generated automatically, still I am clueless at what
> to use in place.
>
> The line:
>
> Timeout.add_seconds_full (Priority.DEFAULT, 1, test);
>
> simply expands to:
>
> g_timeout_add_seconds_full (G_PRIORITY_DEFAULT, (guint) 1,
> _test_gsource_func, NULL, NULL);
The code is correct. The data argument is NULL, so there is nothing to
call DestroyNofify for. If there were some data, there would also be
a destroy notify.
Vala uses the data argument for the invocant of the delegate. So if
you used a non-static method test (and passed it as this.test or object.test),
the code should end up like
g_timeout_add_seconds_full (G_PRIORITY_DEFAULT, (guint) 1,
_test_gsource_func, (gpointer)self, (GDestroyNotify)g_object_unref);
(or along the lines of that -- I am not sure about the exact symbols and it
would probably include a call to g_object_ref somewhere, too)
Regards,
Jan
_______________________________________________
Vala-list mailing list
[email protected]
http://mail.gnome.org/mailman/listinfo/vala-list