Skip to content

Conversation

@foodprocessor
Copy link
Contributor

Based on code analysis, I think this sequence:

  1. Open a file and get a handle
  2. Write to the handle
  3. Delete the file
  4. Close the handle

Would have failed to close the handle in step 4.
The impact on the user application would be a handle leak and maybe other unexpected behavior caused by close failing.

This fix checks if the file was deleted inside flushFileInternal, and skips the upload without returning any errors, allowing close to finish and succeed.

Checklist

  • Tested locally
  • Added Unit Test
  • Updated CHANGELOG.md

@foodprocessor
Copy link
Contributor Author

Since the fuse driver actually prevents open files from being deleted by secretly renaming files to a hidden name instead of actually deleting them (.fuse_hidden files), this bugfix is not needed. But a fun find anyway.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant