gmain: More explicitly document g_main_context_release() prereqs

The documentation was fairly clear before, but we can make it clearer:
it’s a programming error to call `g_main_context_release()` if you have
not received a true return value from `g_main_context_acquire()` before.

Inspired by https://gitlab.gnome.org/GNOME/glib/-/merge_requests/3302.

Signed-off-by: Philip Withnall <pwithnall@endlessos.org>
This commit is contained in:
Philip Withnall 2023-03-06 15:43:23 +00:00
parent 28b1b9d9c3
commit 44616ebafd

View File

@ -3525,7 +3525,7 @@ g_main_dispatch (GMainContext *context)
*
* You must be the owner of a context before you
* can call g_main_context_prepare(), g_main_context_query(),
* g_main_context_check(), g_main_context_dispatch().
* g_main_context_check(), g_main_context_dispatch(), g_main_context_release().
*
* Since 2.76 @context can be %NULL to use the global-default
* main context.
@ -3583,6 +3583,9 @@ g_main_context_acquire_unlocked (GMainContext *context)
* with g_main_context_acquire(). If the context was acquired multiple
* times, the ownership will be released only when g_main_context_release()
* is called as many times as it was acquired.
*
* You must have successfully acquired the context with
* g_main_context_acquire() before you may call this function.
**/
void
g_main_context_release (GMainContext *context)