Closed Bug 1063236 Opened 10 years ago Closed 9 years ago

[Ringtones] Ringtones created with music from an SD card will still appear but won't play when receiving a call after removing the SD card

Categories

(Firefox OS Graveyard :: Gaia::Ringtones, defect)

ARM
Gonk (Firefox OS)
defect
Not set
normal

Tracking

(b2g-v2.0 unaffected, b2g-v2.1 unaffected, b2g-v2.2 affected)

RESOLVED WORKSFORME
Tracking Status
b2g-v2.0 --- unaffected
b2g-v2.1 --- unaffected
b2g-v2.2 --- affected

People

(Reporter: smiko, Unassigned)

References

()

Details

(Keywords: regression, Whiteboard: [2.1-FL-bug-bash] [2.2-flame-reduced-run])

Attachments

(1 file)

Description:
Ringtones created using music found on a SD card will still appear once the SD card is removed. When a call is received, a default ringtone or vibration will sound. 

Repro Steps:
1: Update a Flame to 20140904000203
2: Insert an SD card that contains at least 2 songs
3: Open Settings > Sound > Manage Manage tones, create 2 ringtones using the songs on the SD card and set one to the default ringtone.
4: Remove the SD card
5: Open Settings > Sound > Ringtones and set the other song as the default
6: Call the device from another phone.

Actual:
The phone will either play a pre-installed ringtone, vibrate, or not ring

Expected:
Ringtones made with music from the SD card do not appear or cannot be selected after removing the SD card

Flame 2.1 (319mb)

Environmental Variables:
Device: Flame 2.1 (319mb)
Build ID: 20140903000204
Gaia: fbb297c39aab5f17b179533d2a9a6c5166b2c197
Gecko: fb5e796da813
Version: 34.0a2 (Master)
Firmware Version: v123
User Agent: Mozilla/5.0 (Mobile; rv:34.0) Gecko/34.0 Firefox/34.0
Including QA Wanted for branch checks
QA Whiteboard: [QAnalyst-Triage?]
Flags: needinfo?(dharris)
Keywords: qawanted
Whiteboard: [2.1-FL-bug-bash]
After further investigation, the user needs to reboot the phone after step 4 in order to reproduce. 

This issue DOES reproduce on Flame 2.2(319mb), Open C 2.2, Flame 2.1(512mb), and Open C 2.1

Actual result:When the user changes the ringtone after removing the SD card, the request does not go through and the previous set tone will play.

Expected result: The newly selected song plays as the ringtone, is removed from the list of options, or produces an error message. 

Flame 2.2 (319mb)

Environmental Variables:
Device: Flame Master (319mb)
Build ID: 20140904040204
Gaia: 008026e932b64b4a70b9931c3da96986583bc8d4
Gecko: 776fa9cf70cd
Version: 35.0a1 (Master)
Firmware Version: v123
User Agent: Mozilla/5.0 (Mobile; rv:35.0) Gecko/35.0 Firefox/35.0

Open C 2.2

Environmental Variables:
Device: Open_C Master
Build ID: 20140904040204
Gaia: 008026e932b64b4a70b9931c3da96986583bc8d4
Gecko: 776fa9cf70cd
Version: 35.0a1 (Master)
Firmware Version: P821A10V1.0.0B06_LOG_DL
User Agent: Mozilla/5.0 (Mobile; rv:35.0) Gecko/35.0 Firefox/35.0

Flame 2.1 (512mb)

Environmental Variables:
Device: Flame 2.1 (512mb)
BuildID: 20140904000203
Gaia: a47ecb6368c015dd72148acde26413fd90ba3136
Gecko: 757931d0149e
Version: 34.0a2 (2.1)
Firmware: V123
User Agent: Mozilla/5.0 (Mobile; rv:33.0) Gecko/33.0 Firefox/33.0

Open C 2.1

Environmental Variables:
Device: Open_C 2.1
BuildID: 20140904000203
Gaia: a47ecb6368c015dd72148acde26413fd90ba3136
Gecko: 757931d0149e
Version: 34.0a2 (2.1)
Firmware: P821A10v1.0.0B06_LOG_DL
User Agent: Mozilla/5.0 (Mobile; rv:33.0) Gecko/33.0 Firefox/33.0

This issue does NOT repro on Flame 2.0(319mb) or Open C 2.0
Actual Result: The newly selected song plays as the ringtone after the SD is removed.

Flame 2.0(319mb)

Environmental Variables:
Device: Flame 2.0 (319mb)
BuildID: 20140904000202
Gaia: d056733f8a7a1a152f5458b323f092c47dbffa48
Gecko: 19383abee78a
Version: 32.0 (2.0)
Firmware: V123
User Agent: Mozilla/5.0 (Mobile; rv:32.0) Gecko/32.0 Firefox/32.0

Open_C 2.0

Environmental Variables:
Device: Open_C 2.0 
Build ID: 20140904000202
Gaia: d056733f8a7a1a152f5458b323f092c47dbffa48
Gecko: 19383abee78a
Version: 32.0 (2.0)
Firmware Version: P821A10V1.0.0B06_LOG_DL
User Agent: Mozilla/5.0 (Mobile; rv:32.0) Gecko/32.0 Firefox/32.0

This issue does NOT occur on Flame 1.4(319mb) or Open C 1.4 as the custom ringtone option does not exist

Flame 1.4 (319mb)

Environmental Variables:
Device: Flame 1.4 (319mb)
BuildID: 20140905000203
Gaia: 2ee5b00bfbb8a67a967094804390b4afce8ecf54
Gecko: cbb6d7ad8641
Version: 30.0 (1.4)
Firmware: V123
User Agent: Mozilla/5.0 (Mobile; rv:30.0) Gecko/30.0 Firefox/30.0

Open C 1.4

Environmental Variables:
Device: Open_C 1.4
Build ID: 20140904063007
Gaia: 2ee5b00bfbb8a67a967094804390b4afce8ecf54
Gecko: acb69ef9f3e4
Version: 30.0 (1.4)
Firmware Version: P821A10V1.0.0B06_LOG_DL
User Agent: Mozilla/5.0 (Mobile; rv:30.0) Gecko/30.0 Firefox/30.0
Attached file logcat
No longer blocks: 1027995
Blocks: 1027995
(In reply to Seth Miko [:SethM] from comment #0)
> Actual:
> The phone will either play a pre-installed ringtone, vibrate, or not ring
> 
> Expected:
> Ringtones made with music from the SD card do not appear or cannot be
> selected after removing the SD card

I don't understand these. Can you elaborate? It sounds like the actual and expected behaviors are the same.
Updating dependencies to the correct bug. You're testing the v2.0 feature that lets you create a ringtone from a song right now, not the v2.1 feature that reads ringtones directly from the SD card.

For what it's worth, I've tested setting an SD card ringtone, removing the SD card, and rebooting, and everything works ok, except for bug 1061453.
Blocks: 960329
No longer blocks: 1027995
To clarify, this works fine in 2.0, yes? That is, you can create a ringtone from a song (stored on the SD card), remove the SD card and reboot, and then you can pick that ringtone in the "Select Sound" screen (with the preview playing correctly and the ringtone ultimately getting set as the default)? If so, this is probably a regression, and we'll need to figure out what regressed us.
Flags: needinfo?(smiko)
(In reply to Jim Porter (:squib) from comment #4)
> (In reply to Seth Miko [:SethM] from comment #0)
> > Actual:
> > The phone will either play a pre-installed ringtone, vibrate, or not ring
> > 
> > Expected:
> > Ringtones made with music from the SD card do not appear or cannot be
> > selected after removing the SD card
> 
> I don't understand these. Can you elaborate? It sounds like the actual and
> expected behaviors are the same.

Here's the behavior I'm seeing:

Actual result:When the user changes the ringtone after removing the SD card, the request does not go through and the previous set tone will play when the phone rings.

Expected result: The newly selected song plays as the ringtone, is removed from the list of options, or produces an error message when selected.
Flags: needinfo?(smiko)
Sorry to spam this bug, but I did the following, and everything worked as expected:

1) Set a song from the music app (stored on the SD card) to be my ringtone
2) Reboot/remove the SD card
3) Call my phone (song plays as ringtone)
4) Go to Select Sound and tap the song (song starts playing)
5) Change my ringtone to a built-in one
6) Reboot
7) Go to Select Sound and tap the song (song starts playing)
8) Set the song as my ringtone again
9) Call my phone (song plays as ringtone)

Everything here seems correct. For what it's worth, I'm on a Flame with a recent Gaia flashed in non-production mode with a somewhat less-recent Gecko.
I've narrowed down better STR. Sorry for the confusion:

1: Select a preinstalled ringtone as the default
2: Create a custom ringtone using music stored on the SD card) Do not set as default
3: Remove SD card and reboot
4: Set the ringtone created in step 2 as the default (the message under Ringtones will be "Saving ringtone..")
5: Call the phone (ringtone from step 1 plays)

Once reinserting the SD card and rebooting again, the message under Ringtones will change from "Saving ringtone" to display the song set in step 4 and that song will play when the phone rings

The main issue is that the ringtones are selectable without the SD card inserted. Hope this helps.
(In reply to Seth Miko [:SethM] from comment #9)
> The main issue is that the ringtones are selectable without the SD card
> inserted. Hope this helps.

They should be selectable without the SD card, because they should be stored on internal memory. While I still can't reproduce this issue (I haven't updated Gecko yet), if this bug is present, the problem is that we're not making a copy of the file when we should be.
I see. I think the problem may be that you are not able to set the ringtone when the SD card is removed. Referring back to comment 9, if you use a custom ringtone for step 1, that tone will ring in step 5. So it seems like a copy is being saved. However, switching to another custom ringtone without the SD card does not work.
[Blocking Requested - why for this release]:

Nominating this as a 2.1? blocker. The user will end up with ringtones that can be previewed, but they cannot be set. This will be frustrating for the user, as it make it seem as they are not setting ringtones correctly, when they are.
blocking-b2g: --- → 2.1?
QA Whiteboard: [QAnalyst-Triage?]
Flags: needinfo?(dharris)
QA Contact: ckreinbring
Regression window
Last working
BuildID: 20140829040202
Gaia: 007f3c50cf69f044628a23c2376c6d88aa45f617
Gecko: d697d649c765
Platform Version: 34.0a1
Firmware Version: V123
User Agent: Mozilla/5.0 (Mobile; rv:33.0) Gecko/33.0 Firefox/33.0

First broken
BuildID: 20140902040205
Gaia: 44bf2e3bc5ddea9db9a8c851bd353cb234aa883c
Gecko: c360f3d1c00d
Platform Version: 34.0a1
Firmware Version: V123
User Agent: Mozilla/5.0 (Mobile; rv:33.0) Gecko/33.0 Firefox/33.0

Working Gaia / Broken Gecko = Repro
Gaia: 007f3c50cf69f044628a23c2376c6d88aa45f617
Gecko: c360f3d1c00d
Broken Gaia / Working Gecko = No repro
Gaia: 44bf2e3bc5ddea9db9a8c851bd353cb234aa883c
Gecko: d697d649c765
Gecko pushlog: http://hg.mozilla.org/mozilla-central/pushloghtml?fromchange=d697d649c765&tochange=c360f3d1c00d


B2G Inbound
Last working
BuildID: 20140829113002
Gaia: c05ee27dd1f39e0f1cceb8bc7706e20f297cd9df
Gecko: 7d956b954dd7
Platform Version: 34.0a1
Firmware Version: V123
User Agent: Mozilla/5.0 (Mobile; rv:33.0) Gecko/33.0 Firefox/33.0

First broken
BuildID: 20140829143003
Gaia: 3a95ab1c33084d110351a39eb86d49a18bcf39f3
Gecko: 6b1690ad2cf5
Platform Version: 34.0a1
Firmware Version: V123
User Agent: Mozilla/5.0 (Mobile; rv:33.0) Gecko/33.0 Firefox/33.0

Working Gaia / Broken Gecko = Repro
Gaia: c05ee27dd1f39e0f1cceb8bc7706e20f297cd9df
Gecko: 6b1690ad2cf5
Broken Gaia / Working Gecko = No repro
Gaia: 3a95ab1c33084d110351a39eb86d49a18bcf39f3
Gecko: 7d956b954dd7
Gecko pushlog: http://hg.mozilla.org/integration/b2g-inbound/pushloghtml?fromchange=7d956b954dd7&tochange=6b1690ad2cf5
QA Whiteboard: [QAnalyst-Triage?]
Flags: needinfo?(jmitchell)
Asigning to Jim for initial investigation (He says it probably is a gecko issue). Jim, please investigate and update with your findings.
Assignee: nobody → squibblyflabbetydoo
Hema - the regression window also indicates that it IS a gecko issue.

Possibly broken by either bug 1055920, or bug 1046338 or maybe (less likely) bug 1060311


Starting NI on 1055920 - Randy can you take a look
QA Whiteboard: [QAnalyst-Triage?] → [QAnalyst-Triage+]
Flags: needinfo?(jmitchell) → needinfo?(rlin)
(In reply to Joshua Mitchell [:Joshua_M] from comment #15)
> Hema - the regression window also indicates that it IS a gecko issue.

My guess is that the issue is related to deviceStorage or indexedDB, but I'm not seeing much in the way of commits for those.
QA Whiteboard: [QAnalyst-Triage+] → [QAnalyst-Triage+][lead-review+]
The patch in Bug 1055920 wasn't uplifted to 2.1, but it also happened on this branch.
I think it shouldn't related that one.
Flags: needinfo?(rlin)
Dave - Is there any patch in particular in the window above that jumps out to you as the cause of this regression?
Flags: needinfo?(dhylands)
Blocking Reason: Regression (comment 13)
blocking-b2g: 2.1? → 2.1+
Was the phone powered off while removing the SD Card? The flame doesn't support sdcard removal while its powered on.
If the phone was powered off when the sdcard was removed, then there is NO way that device storage will return any files from it.

Which means that the ringtones being played are either coming from the internal sdcard or from the database.
Flags: needinfo?(dhylands) → needinfo?(smiko)
This sounds like a change in gaia/media storage and not device storage. Device Storage doesn't persist any information (and never has).
(In reply to Dave Hylands [:dhylands] from comment #20)
> Was the phone powered off while removing the SD Card? The flame doesn't
> support sdcard removal while its powered on.
> If the phone was powered off when the sdcard was removed, then there is NO
> way that device storage will return any files from it.
> 
> Which means that the ringtones being played are either coming from the
> internal sdcard or from the database.

I remove the SD card while the phone is on, then reboot.
Flags: needinfo?(smiko)
I still can't reproduce this at all, even after updating Gaia and Gecko.
QA Wanted for a retest on the latest 2.1 Flame KK build.
Keywords: qawanted
QA Whiteboard: [QAnalyst-Triage+][lead-review+] → [lead-review+]
QA Whiteboard: [lead-review+]
Unable to repro on KK Flame 2.1
Actual result: After restarting, the custon ringtone can be selected with no errors, and the custom ringtone will play when the device is called.

BuildID: 20140919125053
Gaia: f1d3cd2301b604b7b8b8dcf69bd36ba638c1ab44
Gecko: c059221c4637
Platform Version: 34.0a2
Firmware Version: V180
User Agent: Mozilla/5.0 (Mobile; rv:34.0) Gecko/34.0 Firefox/34.0
QA Whiteboard: [QAnalyst-Triage?]
Flags: needinfo?(jmitchell)
Keywords: qawanted
Since neither I nor QA can reproduce this reliably, is there anything that needs to be done here? Everything *seems* to work as expected (read: even with the SD card removed, you can select the ringtones you created, and they work fine).
Let me throw a QA-Wanted tag on to check the other affected branch (2.2) - if we also get no repro there than we should probably close this as a works-for-me.
QA Whiteboard: [QAnalyst-Triage?]
Flags: needinfo?(jmitchell)
Keywords: qawanted
QA Contact: ckreinbring
I followed the STR listed in Comment 9. 

Actual Results: Settings App crashes when user attempts to set a custom ringtone without SD card inserted in phone. 

Same results for Flame 319 MB and 512 MB memory settings. 

Environmental Variables:
Device: Flame Master
Build ID: 20140922040649
Gaia: 3802009e1ab6c3ddfc3eb15522e3140a96b33336
Gecko: 5e704397529b
Version: 35.0a1 (Master)
Firmware Version: v180
User Agent: Mozilla/5.0 (Mobile; rv:35.0) Gecko/35.0 Firefox/35.0
Flags: needinfo?(jmitchell)
Keywords: qawanted
QA Whiteboard: [QAnalyst-Triage?]
Not quite what I expected

Jim - It seems this no longer repros in 2.1 but is now a crash in 2.2?
QA Whiteboard: [QAnalyst-Triage?] → [QAnalyst-Triage+]
Flags: needinfo?(jmitchell) → needinfo?(squibblyflabbetydoo)
Could we get a regression window on that? :)

My guess is that the 2.2 issue is something really new, since I tested it only a few days ago and everything was fine.
Flags: needinfo?(squibblyflabbetydoo)
QA Contact: jschmitt
(In reply to Joshua Mitchell [:Joshua_M] from comment #29)
> Not quite what I expected
> 
> Jim - It seems this no longer repros in 2.1 but is now a crash in 2.2?

Joshua/Jim,

Can we close this as works for me then and open a new bug for tracking crash issue on 2.2 along with regression window (there is already bug for a crash affecting ringtones because of some changes that went into OMXdecoder). One issue per bug please otherwise it becomes cumbersome to track the progress.

Thanks
Hema
Closing as WFM - will update with bug # for crash once it is written
Status: NEW → RESOLVED
blocking-b2g: 2.1+ → ---
Closed: 10 years ago
Resolution: --- → WORKSFORME
just an update - I was not able to reproduce the crash - Everything works as expected on both 2.1 and 2.2 - after removing the SD card I am able to switch the custom ringtone back and forth; they play just fine testing and calling the DUT.
This issue still occurs on the flame 2.2, also had a crash occur but was not able to repro it.
QA Whiteboard: [QAnalyst-Triage+] → [QAnalyst-Triage?]
Flags: needinfo?(dharris)
Whiteboard: [2.1-FL-bug-bash] → [2.1-FL-bug-bash] [2.2-flame-reduced-run]
Reopening this bug, as it was closed as WFM and appears to be happening again.
Status: RESOLVED → REOPENED
QA Whiteboard: [QAnalyst-Triage?] → [QAnalyst-Triage+]
Flags: needinfo?(dharris)
Resolution: WORKSFORME → ---
Does this still happen? It's not entirely clear what the status of this bug was when QA last looked at it...
Keywords: qawanted
Assignee: squibblyflabbetydoo → nobody
Results: I went through the repro steps on more current builds. I included the reboot from comment 2 and I was unable to repro the affect where pre-installed ringtone played.   

Environmental Variables: (not affected)
Device: Aries 2.5
BuildID: 20150709090929
Gaia: d8e68a7f53683a13b432d6166d00d89de9d1e3b8
Gecko: 38f2d9f36029
Gonk: 2916e2368074b5383c80bf5a0fba3fc83ba310bd
Version: 42.0a1 (2.5) 
Firmware Version: D5803_23.1.A.1.28_NCB.ftf


Environmental Variables: (not affected)
Device: Flame 2.2
BuildID: 20151030032534
Gaia: 885647d92208fb67574ced44004ab2f29d23cb45
Gecko: b8b7f4efaa6e
Gonk: bd9cb3af2a0354577a6903917bc826489050b40d
Version: 37.0 (2.2) 
Firmware Version: v18D

Environmental Variables: (not affected)
Device: Flame 2.5
BuildID: 20151030030240
Gaia: 91cac94948094cfdcd00cba5c6483e27e80cb3b0
Gecko: b41b92c09fcf94d077a54297aea1dc675b161a9d
Gonk: 205ac4204bbbb2098a8046444acba551ba5dc75a
Version: 45.0a1 (2.5) 
Firmware Version: v18D
QA Whiteboard: [QAnalyst-Triage+] → [QAnalyst-Triage?]
Flags: needinfo?(jmercado)
Keywords: qawanted
This issue is no longer occurring.  Closing as WFM.  Please open a new issue with a fresh logcat if it occurs again.
Status: REOPENED → RESOLVED
Closed: 10 years ago9 years ago
QA Whiteboard: [QAnalyst-Triage?] → [QAnalyst-Triage+]
Flags: needinfo?(jmercado)
Resolution: --- → WORKSFORME
Great, thanks for looking!
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: