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

Edit file instantly incorrectly re-uploads and overwrites file on server #14251

Closed
lostminds opened this issue Feb 16, 2023 · 3 comments · Fixed by #14307
Closed

Edit file instantly incorrectly re-uploads and overwrites file on server #14251

lostminds opened this issue Feb 16, 2023 · 3 comments · Fixed by #14307
Assignees
Labels
Milestone

Comments

@lostminds
Copy link

Describe the bug
After a recent update pressing the Edit button in the file browser now not only downloads the file and opens it in my local text editor (BBEdit) as previously, but also then instantly re-uploads the file overwriting the file on server with a new copy of the file. As far as I can tell the content seems to be the same, but it gives me a scare and means files get changed on the server and a new timestamp even if they haven't been edited.

To Reproduce
Steps to reproduce the behavior:

  1. Select a text file on a remote server
  2. Click on Edit to download the file and open it in your local text editor
  3. See the file open (do nothing)
  4. See Cyberduck immediately upload the file again, overwriting the file on the server with a new copy

Expected behavior
Expect the file to open in the local editor and not be uploaded to the server until the file has been changed and saved.

Desktop (please complete the following information):

  • OS: macOS 13.2
  • Version Version 8.5.5 (39213)

Additional context
I've had no problems with this functionality for many years using BBEdit and Cyberduck together. So something must have changed in either app (or macOS) recently making Cyberduck think the file it has just downloaded is changed and needs to be re-uploaded immediately.

This is very troublesome since I regularly use the Edit function to simply look at web source files in my editor, with no intent to edit them. And now with this bug I don't dare use the feature as it will immediately change the file on the server in unexpected ways.

@nicoh88
Copy link

nicoh88 commented Feb 20, 2023

I can confirm. I have the same problem. It's really annoying with the new file timestamp.

@dkocher dkocher added this to the 8.5.7 milestone Feb 21, 2023
@dkocher dkocher self-assigned this Feb 21, 2023
@dkocher dkocher added the bug label Feb 21, 2023
@dkocher
Copy link
Contributor

dkocher commented Mar 2, 2023

There is a checksum comparison that should skip any upload when the file open in the editor and we receive a filesystem event but the file has not changed

// If checksum still the same no need for save
final Checksum current;
try {
progress.message(MessageFormat.format(
LocaleFactory.localizedString("Compute MD5 hash of {0}", "Status"), temporary.getName()));
current = ChecksumComputeFactory.get(HashAlgorithm.md5).compute(temporary.getInputStream(), new TransferStatus());
}
catch(BackgroundException e) {
log.warn(String.format("Error computing checksum for %s. %s", temporary, e));
return Worker.empty();
}
if(current.equals(checksum)) {

@dkocher
Copy link
Contributor

dkocher commented Mar 3, 2023

Some cleanup in #14307.

dkocher added a commit that referenced this issue Mar 7, 2023
Cache editor references to allow discarding all editors when browser …
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants