From 651b0447f4e52252c9b8d0889c568dc0867d7d9c Mon Sep 17 00:00:00 2001 From: Vicamo Yang Date: Wed, 26 Sep 2012 14:56:15 +0800 Subject: [PATCH] Bug 736706 - Part 2: Handle Message Class 0, r=philikon --- dom/system/gonk/RadioInterfaceLayer.js | 9 ++++++--- dom/system/gonk/ril_worker.js | 9 +++++++++ 2 files changed, 15 insertions(+), 3 deletions(-) diff --git a/dom/system/gonk/RadioInterfaceLayer.js b/dom/system/gonk/RadioInterfaceLayer.js index efcb87e4d44..6753c146217 100644 --- a/dom/system/gonk/RadioInterfaceLayer.js +++ b/dom/system/gonk/RadioInterfaceLayer.js @@ -1004,9 +1004,12 @@ RadioInterfaceLayer.prototype = { return; } - let id = gSmsDatabaseService.saveReceivedMessage(message.sender || null, - message.fullBody || null, - message.timestamp); + let id = -1; + if (message.messageClass != RIL.PDU_DCS_MSG_CLASS_0) { + id = gSmsDatabaseService.saveReceivedMessage(message.sender || null, + message.fullBody || null, + message.timestamp); + } let sms = gSmsService.createSmsMessage(id, DOM_SMS_DELIVERY_RECEIVED, message.sender || null, diff --git a/dom/system/gonk/ril_worker.js b/dom/system/gonk/ril_worker.js index 23bbc39582a..8211a5ce9f7 100644 --- a/dom/system/gonk/ril_worker.js +++ b/dom/system/gonk/ril_worker.js @@ -3084,6 +3084,15 @@ let RIL = { return PDU_FCS_OK; } + // TODO: Bug 739143: B2G SMS: Support SMS Storage Full event + if ((message.messageClass != PDU_DCS_MSG_CLASS_0) && !true) { + // `When a mobile terminated message is class 0..., the MS shall display + // the message immediately and send a ACK to the SC ..., irrespective of + // whether there is memory available in the (U)SIM or ME.` ~ 3GPP 23.038 + // clause 4. + return PDU_FCS_UNSPECIFIED; + } + if (message.header && (message.header.segmentMaxSeq > 1)) { message = this._processReceivedSmsSegment(message); } else {