mirror of
https://github.com/s3fs-fuse/s3fs-fuse.git
synced 2026-04-25 13:26:00 +03:00
[PR #960] [MERGED] Wtf8 #1730
Labels
No labels
bug
bug
dataloss
duplicate
enhancement
feature request
help wanted
invalid
need info
performance
pull-request
question
question
testing
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
starred/s3fs-fuse#1730
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
📋 Pull Request Information
Original PR: https://github.com/s3fs-fuse/s3fs-fuse/pull/960
Author: @kristjanvalur
Created: 2/19/2019
Status: ✅ Merged
Merged: 2/27/2019
Merged by: @ggtakec
Base:
master← Head:wtf8📝 Commits (9)
ca2d1d8Adding utility functions to convert invalid utf8 to wtf8 encoding11b3858more robust wtf8 encoding4f42f4aEnable s3fs encoding and decoding in the fuse interfacee5b8377fix comments and codef336bdeadd command line flag and documentation84c671afix indentation3c97c1bmerged main4c41eacfix documentation and man page6e8678dremove lines that wer accidentally duplicated📊 Changes
7 files changed (+293 additions, -28 deletions)
View changed files
📝
doc/man/s3fs.1(+8 -0)📝
src/s3fs.cpp(+79 -28)📝
src/s3fs_util.cpp(+8 -0)📝
src/string_util.cpp(+126 -0)📝
src/string_util.h(+5 -0)📝
src/test_string_util.cpp(+25 -0)📝
src/test_util.h(+42 -0)📄 Description
Details
S3 errors if object names are not utf-8. File system encodings are not required to be utf8, and in fact windows happily uses cp1252 to name files in NFS exports.
This change optionally examines the input path names and turns them into valid utf-8 code by using a private area of the Unicode namespace to store invalid utf8 bytes. The data are then converted back for listdir operations and readlink.
This allows encodings other than utf-8 for filenames.
🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.