Skip to content

fix: update write controller to handle base64 encoded file paths#340

Merged
egalvis27 merged 1 commit into
feat/go-fuse-daemonfrom
fix/error-uploading-files-with-special-caracters
May 12, 2026
Merged

fix: update write controller to handle base64 encoded file paths#340
egalvis27 merged 1 commit into
feat/go-fuse-daemonfrom
fix/error-uploading-files-with-special-caracters

Conversation

@egalvis27
Copy link
Copy Markdown

@egalvis27 egalvis27 commented May 12, 2026

What is Changed / Added

Uploading files with non-ASCII names (for example Cyrillic characters or ñ) caused path encoding issues in the FUSE -> backend write flow, producing mojibake paths in some cases.

Additionally, filenames containing line breaks are not safe to transport in plain HTTP headers, which could break write requests and lead to downstream failures (including thumbnail generation in some scenarios).

Solution

This PR introduces a single, explicit contract for write-path transport:

  1. The FUSE daemon now sends file paths as Base64-encoded UTF-8 in the X-Path-B64 header.
  2. The backend write controller decodes X-Path-B64 and uses the decoded path for the write operation.
  3. Legacy X-Path compatibility/fallback logic was removed to keep the flow strict and simpler (safe to do because this is not in production yet).

@sonarqubecloud
Copy link
Copy Markdown

@egalvis27 egalvis27 merged commit d9f2bf3 into feat/go-fuse-daemon May 12, 2026
10 of 11 checks passed
@egalvis27 egalvis27 deleted the fix/error-uploading-files-with-special-caracters branch May 12, 2026 14:37
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.

2 participants