diff options
Diffstat (limited to 'gtk/gtkdragdest.c')
-rw-r--r-- | gtk/gtkdragdest.c | 16 |
1 files changed, 11 insertions, 5 deletions
diff --git a/gtk/gtkdragdest.c b/gtk/gtkdragdest.c index 65d6faad75..26cdc6eb53 100644 --- a/gtk/gtkdragdest.c +++ b/gtk/gtkdragdest.c @@ -392,7 +392,7 @@ gtk_drop_target_class_init (GtkDropTargetClass *class) /** * gtk_drop_target_new: - * @formats: (nullable): the supported data formats + * @formats: (nullable) (transfer full): the supported data formats * @actions: the supported actions * * Creates a new #GtkDropTarget object. @@ -403,10 +403,16 @@ GtkDropTarget * gtk_drop_target_new (GdkContentFormats *formats, GdkDragAction actions) { - return g_object_new (GTK_TYPE_DROP_TARGET, - "formats", formats, - "actions", actions, - NULL); + GtkDropTarget *result; + + result = g_object_new (GTK_TYPE_DROP_TARGET, + "formats", formats, + "actions", actions, + NULL); + + g_clear_pointer (&formats, gdk_content_formats_unref); + + return result; } /** |