diff --git a/src/libnm-glib-aux/nm-shared-utils.h b/src/libnm-glib-aux/nm-shared-utils.h index 74b511f9a9..5a0518f83e 100644 --- a/src/libnm-glib-aux/nm-shared-utils.h +++ b/src/libnm-glib-aux/nm-shared-utils.h @@ -1658,15 +1658,16 @@ nm_g_source_destroy_and_unref(GSource *source) * will destroy the user-data of the callback right away (and not only * during the last g_source_unref()). * - * It also means, that if the user data itself has the reference to the - * source, then this will lead to crash: + * This means for example, if the user data itself has the reference to the + * source, then the following would lead to a crash: * * g_source_destroy(user_data->my_source); * // ups, user_data was destroyed (if source was attached). * g_source_unref(user_data->my_source); * - * nm_g_source_destroy_and_unref() and nm_clear_g_source_inst() does not - * suffer from this problem. */ + * nm_g_source_destroy_and_unref(user_data->my_source) and nm_clear_g_source_inst(&user_data->my_source) + * does not have this problem (of course, afterwards, user_data would be a dangling + * pointer). */ g_source_destroy(source); g_source_unref(source); }