diff options
Diffstat (limited to 'src/nautilus-list-base.c')
-rw-r--r-- | src/nautilus-list-base.c | 17 |
1 files changed, 13 insertions, 4 deletions
diff --git a/src/nautilus-list-base.c b/src/nautilus-list-base.c index 8d16c682e..5a1708c92 100644 --- a/src/nautilus-list-base.c +++ b/src/nautilus-list-base.c @@ -1302,15 +1302,24 @@ on_clipboard_contents_received (GObject *source_object, GAsyncResult *res, gpointer user_data) { - NautilusFilesView *files_view = NAUTILUS_FILES_VIEW (user_data); - NautilusListBase *self = NAUTILUS_LIST_BASE (files_view); - NautilusListBasePrivate *priv = nautilus_list_base_get_instance_private (self); + NautilusFilesView *files_view; + NautilusListBase *self; + NautilusListBasePrivate *priv; NautilusClipboard *clip; NautilusViewItem *item; const GValue *value; value = gdk_clipboard_read_value_finish (GDK_CLIPBOARD (source_object), res, NULL); + if (value == NULL) + { + return; + } + + files_view = NAUTILUS_FILES_VIEW (user_data); + self = NAUTILUS_LIST_BASE (files_view); + priv = nautilus_list_base_get_instance_private (self); + for (GList *l = priv->cut_files; l != NULL; l = l->next) { item = nautilus_view_model_get_item_from_file (priv->model, l->data); @@ -1321,7 +1330,7 @@ on_clipboard_contents_received (GObject *source_object, } g_clear_list (&priv->cut_files, g_object_unref); - if (value != NULL && G_VALUE_HOLDS (value, NAUTILUS_TYPE_CLIPBOARD)) + if (G_VALUE_HOLDS (value, NAUTILUS_TYPE_CLIPBOARD)) { clip = g_value_get_boxed (value); } |