summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristian Hergert <chergert@redhat.com>2023-05-01 15:58:02 -0700
committerChristian Hergert <chergert@redhat.com>2023-05-01 15:58:02 -0700
commit052aac9772ef2e76f4ea9d9f2c27fa0d806254ab (patch)
tree05ce419ad22cc3ea86402593f16030dcbaba9216
parent68564b26651f875daa326bc9a07340d0d37ea27b (diff)
downloadgtksourceview-052aac9772ef2e76f4ea9d9f2c27fa0d806254ab.tar.gz
completioncontext: add more checks for proper GTask
We want to be certain the GTask we received is the one that was provided to the provider when requesting completion proposals. Related #319
-rw-r--r--gtksourceview/gtksourcecompletioncontext.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/gtksourceview/gtksourcecompletioncontext.c b/gtksourceview/gtksourcecompletioncontext.c
index d051ba99..bcca86c4 100644
--- a/gtksourceview/gtksourcecompletioncontext.c
+++ b/gtksourceview/gtksourcecompletioncontext.c
@@ -888,6 +888,8 @@ _gtk_source_completion_context_complete_finish (GtkSourceCompletionContext *sel
{
g_return_val_if_fail (GTK_SOURCE_IS_COMPLETION_CONTEXT (self), FALSE);
g_return_val_if_fail (G_IS_TASK (result), FALSE);
+ g_return_val_if_fail (g_task_is_valid (result, self), FALSE);
+ g_return_val_if_fail (g_task_get_source_tag (G_TASK (result)) == _gtk_source_completion_context_complete_async, FALSE);
return g_task_propagate_boolean (G_TASK (result), error);
}