mirror of
https://gitlab.gnome.org/GNOME/glib.git
synced 2025-02-27 04:32:15 +01:00
gmain: Clarify that g_source_set_callback() is safe on attached sources
g_source_set_callback() and g_source_set_callback_indirect() are both safe to call zero or more times on attached sources. The change in callback will take effect the next time the source is dispatched, after the set_callback() call returns (it could block due to locking). https://gitlab.gnome.org/GNOME/glib/issues/827
This commit is contained in:
parent
c2501a81f8
commit
bfe5906b40
10
glib/gmain.c
10
glib/gmain.c
@ -1584,6 +1584,10 @@ static GSourceCallbackFuncs g_source_callback_funcs = {
|
||||
* an initial reference count on @callback_data, and thus
|
||||
* @callback_funcs->unref will eventually be called once more
|
||||
* than @callback_funcs->ref.
|
||||
*
|
||||
* It is safe to call this function multiple times on a source which has already
|
||||
* been attached to a context. The changes will take effect for the next time
|
||||
* the source is dispatched after this call returns.
|
||||
**/
|
||||
void
|
||||
g_source_set_callback_indirect (GSource *source,
|
||||
@ -1640,7 +1644,11 @@ g_source_set_callback_indirect (GSource *source,
|
||||
* on how to handle memory management of @data.
|
||||
*
|
||||
* Typically, you won't use this function. Instead use functions specific
|
||||
* to the type of source you are using.
|
||||
* to the type of source you are using, such as g_idle_add() or g_timeout_add().
|
||||
*
|
||||
* It is safe to call this function multiple times on a source which has already
|
||||
* been attached to a context. The changes will take effect for the next time
|
||||
* the source is dispatched after this call returns.
|
||||
**/
|
||||
void
|
||||
g_source_set_callback (GSource *source,
|
||||
|
Loading…
x
Reference in New Issue
Block a user