Closed Bug 825762 Opened 8 years ago Closed 8 years ago

Bluetooth file transfer failure depending on filename

Categories

(Firefox OS Graveyard :: General, defect)

ARM
Gonk (Firefox OS)
defect
Not set
critical

Tracking

(blocking-b2g:tef+, blocking-basecamp:-, firefox19 wontfix, firefox20 wontfix, firefox21 fixed, b2g18+ fixed, b2g18-v1.0.0 fixed)

VERIFIED FIXED
B2G C4 (2jan on)
blocking-b2g tef+
blocking-basecamp -
Tracking Status
firefox19 --- wontfix
firefox20 --- wontfix
firefox21 --- fixed
b2g18 + fixed
b2g18-v1.0.0 --- fixed

People

(Reporter: gerard-majax, Assigned: echou)

Details

Attachments

(1 file, 1 obsolete file)

File transfer over bluetooth seems to fail depending on the filename being transferred. I reproduced it between Ubuntu (12.10) and Firefox OS running on Nexus S.

Gecko @ 49bd828
Gaia @ fb5880d

$ sha1sum Capture*
8a94b4eec65c6c7fbc9cc5cd94b5dd2a69ce3dde  Capture du 2012-12-30 21:20:35.png  => failure 0x41
8a94b4eec65c6c7fbc9cc5cd94b5dd2a69ce3dde  Capture_du_2012-12-30_21:20:35.png  => failure 0x41
8a94b4eec65c6c7fbc9cc5cd94b5dd2a69ce3dde  Capture_du_2012-12-30_212035.png    => OK
8a94b4eec65c6c7fbc9cc5cd94b5dd2a69ce3dde  Capture_du_20121230_212035.png      => OK

The presence of ':' (at least, not checked everything) seems to make the transfer failing with error 0x41.
blocking-basecamp: --- → ?
I think it's basically because VFAT does not allows ':' in filenames.
: is one of the character that causing the failure of this.
I also tried to include like ~!@#$%^&* in a file. It would make the bluetooth file transferring failed.
CC. Gina Yeh and Eric Chou for them to look into this issue when they have free time.
Confirmed. I'll take it.
Assignee: nobody → echou
Triage: BB-, tracking-b2g18+. this seems to be more of a case with transferring files from a computer. Phone to phone file transfer should be ok (given that you would have problem loading files with special file names into the SD in the first place)
blocking-basecamp: ? → -
tracking-b2g18: --- → +
Would it be THAT hard to just have a better error message, or best, when receiving the file and prompting the user for permission notifying that it contains characters that cannot be used on vfat ?
(In reply to Alexandre LISSY :gerard-majax from comment #7)
> Would it be THAT hard to just have a better error message, or best, when
> receiving the file and prompting the user for permission notifying that it
> contains characters that cannot be used on vfat ?

I don't think that would be a issue having a better error message or other actions. However, it might not be the most urgent thing to handle. In that case, it's bb-. 

Also, Eric Chou told us that he would take that. To my best understanding, he would fix bug really fast or at least at a good care of it.
*or at least "take" good care of it.
* Replace VFAT reserved characters with '_' to avoid transferring failed. Please see the link below for more information about the list of reserved characters.

http://msdn.microsoft.com/en-us/library/windows/desktop/aa365247%28v=vs.85%29.aspx
Attachment #700982 - Flags: review?(kyle)
Component: Gaia::Bluetooth File Transfer → General
* fix typo
Attachment #700982 - Attachment is obsolete: true
Attachment #700982 - Flags: review?(kyle)
Attachment #701053 - Flags: review?(kyle)
Comment on attachment 701053 [details] [diff] [review]
patch 1: v2: replace invalid chars in filename of received files

Review of attachment 701053 [details] [diff] [review]:
-----------------------------------------------------------------

There might be cleaner ways to express the reserved char check, but this is important enough that I'm not going to block it on that.
Attachment #701053 - Flags: review?(kyle) → review+
https://hg.mozilla.org/mozilla-central/rev/09f24f14e290
Status: NEW → RESOLVED
Closed: 8 years ago
Resolution: --- → FIXED
Nominate as tef?

Rationale:
Without this patch, we are unable to receive a file with characters such as ?:[]<>|
In addition, it won't affect the logic of file transfer, only a name check function call will be inserted in the middle of the receiving file process.
blocking-b2g: --- → tef?
(In reply to Eric Chou [:ericchou] [:echou] from comment #17)
> Nominate as tef?
> 
> Rationale:
> Without this patch, we are unable to receive a file with characters such as
> ?:[]<>|

Sorry for the unclear description, I meant "unable to receive a file with these characters in its file name"
blocking-b2g: tef? → tef+
Verified fixed in 2013-01-20-07-02-02 pvt nightly b2g18 build.

This patch would change anything that might causing crashes, like ?:[]<>| to _ before starting to transferring.
Status: RESOLVED → VERIFIED
Landed on mozilla-b2g18/gaia master prior to the 1/25 branching to mozilla-b2g18_v1_0_0/v1.0.0, updating status-b2g-v1.0.0 to fixed.
You need to log in before you can comment on or make changes to this bug.