Fix non-ASCII (Korean) repo backup failure#2370
Merged
m3nu merged 3 commits intoborgbase:masterfrom Feb 4, 2026
Merged
Conversation
2 tasks
m3nu
previously approved these changes
Feb 4, 2026
Contributor
Author
|
I think I've fixed the test failure, by doing a conditional import for the MacOS-specific module. 🤞 |
m3nu
approved these changes
Feb 4, 2026
Contributor
|
Thanks for the useful addition! |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
This PR fixes an issue where backing up to a repository with a non-ASCII (Korean) name failed due to incorrect length checking logic on MacOS. I updated the code to do
.encode()to pass the length in bytes, rather than the simple character length, since Korean characters are multi-byte and since the Apple function SecKeychainFindGenericPassword appears to use byte length. The docs are ambiguous on whether they use byte length:but my change is consistent with the behavior of C
strlen()UTF-8 handling, and it fixes the issue.Related Issue
#2332
Motivation and Context
Backups weren't working when using a repository with a Korean name.
How Has This Been Tested?
I ran through the reproduction steps in the linked issue with my change and observed that the backup worked, while it failed without the change.
Screenshots (if appropriate):
Types of changes
Checklist:
I provide my contribution under the terms of the license of this repository and I affirm the Developer Certificate of Origin.