shared/tests: use nmtst_g_source_set_boolean_true() in nmtst_main_context_iterate_until()

(cherry picked from commit eceaa39a1e)
(cherry picked from commit 8673206f82)
This commit is contained in:
Thomas Haller 2020-01-04 08:40:19 +01:00
parent 52bd1d8cef
commit 977cee72d8
No known key found for this signature in database
GPG key ID: 29C2366E4DFC5728

View file

@ -1044,24 +1044,14 @@ _nmtst_main_loop_quit_on_notify (GObject *object, GParamSpec *pspec, gpointer us
}
#define nmtst_main_loop_quit_on_notify ((GCallback) _nmtst_main_loop_quit_on_notify)
static inline gboolean
_nmtst_main_context_iterate_until_timeout (gpointer user_data)
{
gboolean *p_had_pointer = user_data;
g_assert (!*p_had_pointer);
*p_had_pointer = TRUE;
return G_SOURCE_CONTINUE;
}
#define nmtst_main_context_iterate_until(context, timeout_ms, condition) \
#define nmtst_main_context_iterate_until(context, timeout_msec, condition) \
G_STMT_START { \
nm_auto_destroy_and_unref_gsource GSource *_source = NULL; \
GMainContext *_context = (context); \
gboolean _had_timeout = FALSE; \
\
_source = g_timeout_source_new (timeout_ms); \
g_source_set_callback (_source, _nmtst_main_context_iterate_until_timeout, &_had_timeout, NULL); \
_source = g_timeout_source_new (timeout_msec); \
g_source_set_callback (_source, nmtst_g_source_set_boolean_true, &_had_timeout, NULL); \
g_source_attach (_source, _context); \
\
while (TRUE) { \