-
Notifications
You must be signed in to change notification settings - Fork 181
Open
Labels
P1Priority 1 issue (will likely block a customer in the future)Priority 1 issue (will likely block a customer in the future)lang: swiftAn issue with a Swift client libraryAn issue with a Swift client libraryplatform: appleAn issue with the macOS or iOS implementationAn issue with the macOS or iOS implementationproject: commonAn issue with the Nearby common codeAn issue with the Nearby common codeproject: connectionsAn issue with the Connections projectAn issue with the Connections projecttype: bugSomething is broken or not working as intendedSomething is broken or not working as intended
Description
Project
Nearby Connections
Language
Swift
OS Platform
Apple
What happened?
When sending a file with Non-ASCII name(e.g. Hiraganaひらがな.txt
, Cyrillicкириллица.txt
, or !@#.png
) after connection, iOS app failed to send a file. There are two cases depending on whether file URL is percent-encoded or not.
- Nothing is sent when the file name is percent-encoded.
- Null pointer exception throws when the file name is not percent-encoded
Oh, I made URL instance using URL(fileURLWithPath: path)
constructor.
What did you expect to happen?
I expected to send a file payload to connected endpoint.
How can we reproduce it (as minimally and precisely as possible)?
- Name any file to a name containing text with [^0-9a-zA-Z] (e.g.
Apple애플.png
,!@#.png
, etc.) - Make URL instance indicating this file with
let url = URL(fileURLWithPath: "this file path")
- Make connection with other device. (In my case, it does not matter whether the opponent is Android or iOS device)
- Send file payload using
connectionManager.sendResource(at: url, withName: "any-name", to: [endpointId], id: payloadId)
How often does this bug happen?
Every time
Standalone code to reproduce the issue
the iOS Example with some modification(sendResource
) would work. Please let me know if you are not being able to reproduce it.
Relevant log output
No response
Anything else we need to know?
- I only tested this using point-to-point strategy.
Metadata
Metadata
Assignees
Labels
P1Priority 1 issue (will likely block a customer in the future)Priority 1 issue (will likely block a customer in the future)lang: swiftAn issue with a Swift client libraryAn issue with a Swift client libraryplatform: appleAn issue with the macOS or iOS implementationAn issue with the macOS or iOS implementationproject: commonAn issue with the Nearby common codeAn issue with the Nearby common codeproject: connectionsAn issue with the Connections projectAn issue with the Connections projecttype: bugSomething is broken or not working as intendedSomething is broken or not working as intended