[Airplane mode] airplane mode cannot be turned off after restart

VERIFIED FIXED in 1.3 C2/1.4 S2(17jan)

Status

Firefox OS
Gaia::Settings
VERIFIED FIXED
5 years ago
5 years ago

People

(Reporter: pyang, Assigned: aknow)

Tracking

unspecified
1.3 C2/1.4 S2(17jan)
ARM
Gonk (Firefox OS)

Firefox Tracking Flags

(Not tracked)

Details

(Whiteboard: dsdsrun1.3-1)

Attachments

(1 attachment, 1 obsolete attachment)

(Reporter)

Description

5 years ago
Reproducible on dsds [fugu] machine.

Gaia      cbd29217ea37209449774b0c31cbfbdd2da6ee68
Gecko     0711d9529ced971c85244c4be3504d01edf5161d
BuildID   20131211154453
Version   28.0a2
ro.build.version.incremental=13

Reproduce steps:
1. Turn on airplane mode
2. Before it actually turned on, restart the device.

EXPECT:
- Airplane mode is turned on, and can be turned off.

ACTUAL:
- User cannot turn off airplane mode, which disables data connection.
(Reporter)

Updated

5 years ago
Whiteboard: dsdsrun1.3-1
(Assignee)

Comment 1

5 years ago
Hi Paul,

Need your help to reproduce the bug. I have tried it several times but didn't trigger the problem.
My Steps:
0. fugu with 2 sim cards
1. turn on airplane mode from (a) utility tray or (b) settings
2. after I tap the icon, reboot the phone by "adb reboot" immediately
3. after the power on, turn off airplane mode. It takes some time, but will be OK eventually.
Flags: needinfo?(pyang)
(Reporter)

Comment 2

5 years ago
After doing some experiments,
Enable data call may be a key factor of this bug.
Please help to enable data connection before reproducing.
Flags: needinfo?(pyang)
(Assignee)

Updated

5 years ago
Assignee: nobody → szchen
(Assignee)

Comment 3

5 years ago
Created attachment 8351084 [details] [diff] [review]
radio state rollback

Rollback radio state if setRadioEnabled fails.
Attachment #8351084 - Flags: review?(htsai)
Comment on attachment 8351084 [details] [diff] [review]
radio state rollback

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

r=me with comment addressed. Thank you.

::: dom/system/gonk/RadioInterfaceLayer.js
@@ +2873,5 @@
>      }
>  
>      let callback = (function(response) {
> +      if (response.errorMsg) {
> +        // Request fail. Rollback to the original radiostate.

nit: s/fail/fails/

::: dom/system/gonk/ril_worker.js
@@ +5237,5 @@
>    if (DEBUG) debug("Operator: " + operatorData);
>    this._processOperator(operatorData);
>  };
>  RIL[REQUEST_RADIO_POWER] = function REQUEST_RADIO_POWER(length, options) {
> +  options.errorMsg = RIL_ERROR_TO_GECKO_ERROR[options.rilRequestError];

Please place this line after the clause of |if (options.rilMessageType == null)| because we don't need it if options.rilMessageType isn't null.
Attachment #8351084 - Flags: review?(htsai) → review+
(Assignee)

Comment 5

5 years ago
Created attachment 8355119 [details] [diff] [review]
[final] Radio state rollback. r=hsinyi
Attachment #8351084 - Attachment is obsolete: true
Attachment #8355119 - Flags: review+
https://hg.mozilla.org/mozilla-central/rev/e0d22cbe1e83
Status: NEW → RESOLVED
Last Resolved: 5 years ago
Resolution: --- → FIXED
Target Milestone: --- → 1.3 C2/1.4 S2(17jan)

Comment 9

5 years ago
Verified on fugu

Gaia      ee25b0e45649d2955f340ce4f71ad55712dd0fab
Gecko     913cf2b92845441c9578787362ddad6f2ac15df6
BuildID   20140121095108
Version   28.0a2
Status: RESOLVED → VERIFIED
You need to log in before you can comment on or make changes to this bug.