From 2654ba5735ce357108f5d0322fd01159cbe7df78 Mon Sep 17 00:00:00 2001 From: Nicolas Del Piano <ndel314@gmail.com> Date: Wed, 15 Jan 2014 10:14:10 -0300 Subject: [PATCH] Bug 957084 - Allow the sending of empty SMS messages (Gecko side). r=gene This patch allows to send empty messages. The fragmentText function did not contemplate the empty message case. So, I changed and added some behaviours that removed the conflict. --- dom/system/gonk/RadioInterfaceLayer.js | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/dom/system/gonk/RadioInterfaceLayer.js b/dom/system/gonk/RadioInterfaceLayer.js index 9d4f5acd8a629..4bd47353c5b80 100644 --- a/dom/system/gonk/RadioInterfaceLayer.js +++ b/dom/system/gonk/RadioInterfaceLayer.js @@ -3318,6 +3318,15 @@ RadioInterface.prototype = { _fragmentText7Bit: function(text, langTable, langShiftTable, segmentSeptets, strict7BitEncoding) { let ret = []; let body = "", len = 0; + // If the message is empty, we only push the empty message to ret. + if (text.length == 0) { + ret.push({ + body: text, + encodedBodyLength: text.length, + }); + return ret; + } + for (let i = 0, inc = 0; i < text.length; i++) { let c = text.charAt(i); if (strict7BitEncoding) { @@ -3387,6 +3396,15 @@ RadioInterface.prototype = { */ _fragmentTextUCS2: function(text, segmentChars) { let ret = []; + // If the message is empty, we only push the empty message to ret. + if (text.length == 0) { + ret.push({ + body: text, + encodedBodyLength: text.length, + }); + return ret; + } + for (let offset = 0; offset < text.length; offset += segmentChars) { let str = text.substr(offset, segmentChars); ret.push({ -- GitLab