Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

POSIX clipboard (wClipboard) produces on master invalid file lists #8350

Closed
pnowack opened this issue Oct 27, 2022 · 4 comments · Fixed by #8358
Closed

POSIX clipboard (wClipboard) produces on master invalid file lists #8350

pnowack opened this issue Oct 27, 2022 · 4 comments · Fixed by #8358
Assignees

Comments

@pnowack
Copy link
Member

pnowack commented Oct 27, 2022

When trying to copy paste a folder (containing files) with xfreerdp3 (master), the submitted file list is invalid. A lot of file-replace dialogs are shown for each entry (where as the former file seems to always be 0 Bytes) and the attributes (the creation date) is invalid.

Reproduction steps:

  1. Prepare a folder with files, you can clone the ogon-channels repo for this (small repo, lots of files).
  2. Connect with xfreerdp3 (master) to an RDP server
  3. Copy the folder on the client side and paste it on the server side

Observation:

You get a lot of file-replace dialogs and the file creation attribute is invalid. Also, the contents of the folder themselves are in the top level directory too.
These issue don't happen with xfreerdp2 (stable-2.0 branch).

Screencast of the issue:

Bildschirmaufzeichnung.vom.2022-10-27.09-15-11.webm

In the screencast, first xfreerdp3 (master) is used to try to copy-paste the folder (where you can see, that it fails with the errors mentioned above).
Then xfreerdp2 (stable-2.0) is used, where everything works fine.

@pnowack
Copy link
Member Author

pnowack commented Oct 27, 2022

The issue is likely in the POSIX clipboard part. A month or two ago, things just worked fine. So, any recent PRs in that area are possible candidates where things went wrong.

@akallabeth akallabeth self-assigned this Oct 27, 2022
@akallabeth
Copy link
Member

@pnowack ok, can not reproduce here on fedora 36 with gnome/nautilus. (copied my whole download folder with many subolders, android studio, ... in it)

@pnowack
Copy link
Member Author

pnowack commented Oct 27, 2022

@akallabeth that's weird. In any case, the error is with xfreerdp from the master branch and the nautilus version on the client side here 43.0 (am on Arch)
nautilus was ported to GTK4 in 43, but should not affect xfreerdp in any case here, and xfreerdp from the stable-2.0 branch is, as seen in the screencast unaffected by that.

In the screencast, where I close the xfreerdp3 window, the terminal output is seen and lots of Find NextFile failed (18) is shown, does this give a clue here?

@pnowack
Copy link
Member Author

pnowack commented Oct 27, 2022

Could you retry this with the ogon-channels repo here, which I use here too? In case nautilus 43 really brings an additional factor here (although it works fine with the stable-2.0 version), Ubuntu 22.10 also has GNOME 43.

can not reproduce here on fedora 36 with gnome/nautilus.

Does this also apply to the file changed dates here (i.e. not 1601, but actual date, that is also used on the client side for the respective file(s))?

@akallabeth akallabeth linked a pull request Oct 27, 2022 that will close this issue
gnomesysadmins pushed a commit to GNOME/gnome-remote-desktop that referenced this issue Nov 8, 2022
When preparing the uri-list for a file list of copied files, only the
actual selected files and folders need to be included in the uri-list,
since files in subfolders are automatically handled.
To check for the selected files, gnome-remote-desktop only checks for
the backslash ('\\') operator, but not also for the slash operator
('/'), which could lead to errors during the pasting operation, even
though the use of the slash operator in file lists is discouraged.

Fix this situation by also accounting for the slash operator, when
preparing uri-lists.

See also: FreeRDP/FreeRDP#8350
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants