Xfce Bug Tracker

Sub domains
 
Restoring non-empty folders spawns a warning about modification/restores fold...
Status:
NEW
Priority:
Medium
Severity:
normal

Comments

Description flocculant 2017-04-28 13:19:05 CEST
Created attachment 7095 [details]
warning screenshot

Empty folders after deleting and restoring from trash works without warning.

Folders with contents are restored AND left in trash, with a warning about modifying.

Have 1.6.11 with patch from 13481 installed locally.
Comment 1 flocculant 2017-04-28 21:54:22 CEST
Retry - this option restores the folder to it's source, but respawns the warning dialogue

Cancel - restores the folder to source

Skip all/Skip - restores the folder to source
Comment 2 vc-01 2017-05-01 19:53:56 CEST
Created attachment 7096 [details]
[PATCH] Allow GIO copy/delete fallback for file restore from Trash

Error message showed on attached the picture is very probably set in gvfsbackendtrash.c:trash_backend_delete()

if (!is_toplevel)
    g_set_error_literal (&error, G_IO_ERROR, G_IO_ERROR_PERMISSION_DENIED,
        _("Items in the trash may not be modified"));

*Analysis*
This happens when thunar restores file using schemes (e.g. trash:///trasheddir -> file:///restoredir), sets flag G_FILE_COPY_NO_FALLBACK_FOR_MOVE to g_file_move(), then g_file_move() "wants" to fallback to copy/delete because move between different mount points is not supported, and then thunar fallbacks to internal manual copy/delete file by file. Finally trying delete file which is not a top level file in trash:// is not permitted by gvfs (see above).

*Solution*
I don't know why this flag is set globally here for every file move a then thunar internally implements this copy/delete fallback feature.

Hence in this patch, I removed flag G_FILE_COPY_NO_FALLBACK_FOR_MOVE for trash restore operation only. I would also think about adding G_FILE_COPY_ALL_METADATA later. It looks reasonable to me.

In 'pcmanfm' (file manager), flags used in this operations are G_FILE_COPY_NOFOLLOW_SYMLINKS | G_FILE_COPY_ALL_METADATA.

In thunar flags are (were) G_FILE_COPY_NOFOLLOW_SYMLINKS | G_FILE_COPY_NO_FALLBACK_FOR_MOVE.
Note You need to log in before you can comment on or make changes to this bug.

Bug #13535

Reported by:
flocculant
Reported on: 2017-04-28
Last modified on: 2017-05-01 Show history

People

Assignee:
Xfce Bug Triage
CC List:
3 users show

Version

Version:
1.6.11

Attachments

warning screenshot (15.45 KB, image/png)
2017-04-28 13:19 CEST, flocculant
no flags Details
[PATCH] Allow GIO copy/delete fallback for file restore from Trash (2.04 KB, patch)
2017-05-01 19:53 CEST, vc-01
no flags Details

Additional information