Closed
Bug 877064
Opened 12 years ago
Closed 12 years ago
B2G MMS: Retry sending MMS fail.
Categories
(Core :: DOM: Device Interfaces, defect)
Tracking
()
People
(Reporter: ctai, Assigned: ctai)
References
Details
(Whiteboard: RN6/7)
Attachments
(1 file, 5 obsolete files)
3.81 KB,
patch
|
Details | Diff | Splinter Review |
Looks like something on the retrying send MMS.
Assignee | ||
Updated•12 years ago
|
Summary: B2G MMS: Fix retring send MMS. → B2G MMS: Retry sending MMS fail.
Assignee | ||
Comment 2•12 years ago
|
||
Assignee | ||
Updated•12 years ago
|
Assignee: nobody → ctai
Assignee | ||
Comment 3•12 years ago
|
||
Attachment #755209 -
Attachment is obsolete: true
Assignee | ||
Comment 4•12 years ago
|
||
Attachment #755212 -
Attachment is obsolete: true
Attachment #755213 -
Flags: feedback?(vyang)
Updated•12 years ago
|
Whiteboard: RN5/29
Updated•12 years ago
|
Whiteboard: RN5/29 → RN6/7
Assignee | ||
Comment 5•12 years ago
|
||
Attachment #755213 -
Attachment is obsolete: true
Attachment #755213 -
Flags: feedback?(vyang)
Assignee | ||
Updated•12 years ago
|
Attachment #755860 -
Flags: feedback?(vyang)
Assignee | ||
Comment 6•12 years ago
|
||
Root cause:
Users of instances of nsITimer should keep a reference to the timer until it is no longer needed in order to assure the timer is fired.
https://developer.mozilla.org/en-US/docs/XPCOM_Interface_Reference/nsITimer
Comment 7•12 years ago
|
||
Comment on attachment 755860 [details] [diff] [review]
Patch v1.3
Review of attachment 755860 [details] [diff] [review]:
-----------------------------------------------------------------
::: dom/mobilemessage/src/ril/MmsService.js
@@ +625,5 @@
> function RetrieveTransaction(contentLocation) {
> this.contentLocation = contentLocation;
> +
> + // We need to keep a reference to the timer to assure the timer is fired.
> + this.timer = Cc["@mozilla.org/timer;1"].createInstance(Ci.nsITimer);
Please only create a timer when necessary.
@@ +748,5 @@
> msg.headers["content-type"] = contentType;
> }
>
> + // We need to keep a reference to the timer to assure the timer is fired.
> + this.timer = Cc["@mozilla.org/timer;1"].createInstance(Ci.nsITimer);
ditto
::: modules/libpref/src/init/all.js
@@ +4207,5 @@
> // never: Never retrieval mode.
> pref("dom.mms.retrieval_mode", "manual");
>
> pref("dom.mms.sendRetryCount", 3);
> +pref("dom.mms.sendRetryInterval", 180000);
Any reason to shorten the retry interval here?
Attachment #755860 -
Flags: feedback?(vyang)
Assignee | ||
Comment 8•12 years ago
|
||
Attachment #755860 -
Attachment is obsolete: true
Assignee | ||
Updated•12 years ago
|
Attachment #756467 -
Flags: review?(vyang)
Comment 9•12 years ago
|
||
Comment on attachment 756467 [details] [diff] [review]
Patch v1.4
Review of attachment 756467 [details] [diff] [review]:
-----------------------------------------------------------------
::: dom/mobilemessage/src/ril/MmsService.js
@@ +625,5 @@
> function RetrieveTransaction(contentLocation) {
> this.contentLocation = contentLocation;
> +
> + // We need to keep a reference to the timer to assure the timer is fired.
> + this.timer = null;
nit: you can simply move this line into |RetrieveTransaction.prototype|.
@@ +639,5 @@
> let that = this;
> this.retrieve((function retryCallback(mmsStatus, msg) {
> if (MMS.MMS_PDU_STATUS_DEFERRED == mmsStatus &&
> that.retryCount < PREF_RETRIEVAL_RETRY_COUNT) {
> + if (that.retryCount === 0) {
nit: please check nullity of |that.timer| instead. We don't need an extra pre-condition "timer is null when retryCount is zero" even it's true.
@@ +752,5 @@
> msg.headers["content-type"] = contentType;
> }
>
> + // We need to keep a reference to the timer to assure the timer is fired.
> + this.timer = null;
ditto
@@ +836,5 @@
> let retryCallback = (function (mmsStatus, msg) {
> if ((MMS.MMS_PDU_ERROR_TRANSIENT_FAILURE == mmsStatus ||
> MMS.MMS_PDU_ERROR_PERMANENT_FAILURE == mmsStatus) &&
> this.retryCount < PREF_SEND_RETRY_COUNT) {
> + if (this.retryCount === 0) {
ditto.
Attachment #756467 -
Flags: review?(vyang) → review+
Assignee | ||
Comment 10•12 years ago
|
||
Can you mark this bug as leo+?
This bug will cause the sending icon spin forever.
Thanks.
Flags: needinfo?(dietrich)
Assignee | ||
Comment 11•12 years ago
|
||
Attachment #756467 -
Attachment is obsolete: true
Assignee | ||
Updated•12 years ago
|
Keywords: checkin-needed
Comment 12•12 years ago
|
||
Keywords: checkin-needed
Comment 13•12 years ago
|
||
Status: NEW → RESOLVED
Closed: 12 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla24
Updated•12 years ago
|
blocking-b2g: leo? → leo+
Flags: needinfo?(dietrich)
Comment 14•12 years ago
|
||
status-b2g18:
--- → fixed
status-b2g18-v1.0.0:
--- → wontfix
status-b2g18-v1.0.1:
--- → wontfix
status-b2g-v1.1hd:
--- → affected
status-firefox22:
--- → wontfix
status-firefox23:
--- → wontfix
status-firefox24:
--- → fixed
Comment 15•12 years ago
|
||
Updated•12 years ago
|
Flags: in-moztrap-
You need to log in
before you can comment on or make changes to this bug.
Description
•