mirror of
https://gitlab.gnome.org/GNOME/glib.git
synced 2024-12-26 15:36:14 +01:00
gcancellable: add back lost NULL check in g_cancellable_cancel()
Commit f975858e86
removed the NULL check in g_cancellable_cancel() by
accident which makes it crash when called with NULL.
Add the check back and add a test so this doesn't happen again.
Fixes #1710
This commit is contained in:
parent
aeb7dbad30
commit
e13c646465
@ -484,7 +484,7 @@ g_cancellable_cancel (GCancellable *cancellable)
|
|||||||
{
|
{
|
||||||
GCancellablePrivate *priv;
|
GCancellablePrivate *priv;
|
||||||
|
|
||||||
if (g_cancellable_is_cancelled (cancellable))
|
if (cancellable == NULL || g_cancellable_is_cancelled (cancellable))
|
||||||
return;
|
return;
|
||||||
|
|
||||||
priv = cancellable->priv;
|
priv = cancellable->priv;
|
||||||
|
@ -216,12 +216,19 @@ test_cancel_multiple_concurrent (void)
|
|||||||
g_main_loop_unref (loop);
|
g_main_loop_unref (loop);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static void
|
||||||
|
test_cancel_null (void)
|
||||||
|
{
|
||||||
|
g_cancellable_cancel (NULL);
|
||||||
|
}
|
||||||
|
|
||||||
int
|
int
|
||||||
main (int argc, char *argv[])
|
main (int argc, char *argv[])
|
||||||
{
|
{
|
||||||
g_test_init (&argc, &argv, NULL);
|
g_test_init (&argc, &argv, NULL);
|
||||||
|
|
||||||
g_test_add_func ("/cancellable/multiple-concurrent", test_cancel_multiple_concurrent);
|
g_test_add_func ("/cancellable/multiple-concurrent", test_cancel_multiple_concurrent);
|
||||||
|
g_test_add_func ("/cancellable/null", test_cancel_null);
|
||||||
|
|
||||||
return g_test_run ();
|
return g_test_run ();
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user