All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCHv2] Fix adding 8bit reference number
@ 2010-09-02  7:47 Aki Niemi
  2010-09-02 17:16 ` Denis Kenzior
  0 siblings, 1 reply; 4+ messages in thread
From: Aki Niemi @ 2010-09-02  7:47 UTC (permalink / raw)
  To: ofono

[-- Attachment #1: Type: text/plain, Size: 1386 bytes --]

---
 src/sms.c |   19 ++++++++++++-------
 1 files changed, 12 insertions(+), 7 deletions(-)

diff --git a/src/sms.c b/src/sms.c
index 7298563..2012fe5 100644
--- a/src/sms.c
+++ b/src/sms.c
@@ -522,7 +522,7 @@ static gboolean tx_next(gpointer user_data)
 }
 
 static void set_ref_and_to(GSList *msg_list, guint16 ref, int offset,
-				const char *to)
+				gboolean use_16bit, const char *to)
 {
 	GSList *l;
 	struct sms *sms;
@@ -530,12 +530,17 @@ static void set_ref_and_to(GSList *msg_list, guint16 ref, int offset,
 	for (l = msg_list; l; l = l->next) {
 		sms = l->data;
 
-		if (offset != 0) {
-			sms->submit.ud[offset] = (ref & 0xf0) >> 8;
-			sms->submit.ud[offset+1] = (ref & 0x0f);
-		}
-
 		sms_address_from_string(&sms->submit.daddr, to);
+
+		if (offset == 0)
+			continue;
+
+		if (use_16bit) {
+			sms->submit.ud[offset] = ref & 0xf0 >> 8;
+			sms->submit.ud[offset+1] = ref & 0x0f;
+		} else {
+			sms->submit.ud[offset] = ref & 0x0f;
+		}
 	}
 }
 
@@ -621,7 +626,7 @@ static DBusMessage *sms_send_message(DBusConnection *conn, DBusMessage *msg,
 	if (!msg_list)
 		return __ofono_error_invalid_format(msg);
 
-	set_ref_and_to(msg_list, sms->ref, ref_offset, to);
+	set_ref_and_to(msg_list, sms->ref, ref_offset, TRUE, to);
 	DBG("ref: %d, offset: %d", sms->ref, ref_offset);
 
 	if (ref_offset != 0) {
-- 
1.7.0.4


^ permalink raw reply related	[flat|nested] 4+ messages in thread

* Re: [PATCHv2] Fix adding 8bit reference number
  2010-09-02  7:47 Aki Niemi
@ 2010-09-02 17:16 ` Denis Kenzior
  0 siblings, 0 replies; 4+ messages in thread
From: Denis Kenzior @ 2010-09-02 17:16 UTC (permalink / raw)
  To: ofono

[-- Attachment #1: Type: text/plain, Size: 555 bytes --]

Hi Aki,

> -		if (offset != 0) {
> -			sms->submit.ud[offset] = (ref & 0xf0) >> 8;
> -			sms->submit.ud[offset+1] = (ref & 0x0f);
> -		}
> -
>  		sms_address_from_string(&sms->submit.daddr, to);
> +
> +		if (offset == 0)
> +			continue;
> +
> +		if (use_16bit) {
> +			sms->submit.ud[offset] = ref & 0xf0 >> 8;

This doesn't look right at all, bitwise shift >> has higher precedence
than bitwise AND &.

> +			sms->submit.ud[offset+1] = ref & 0x0f;
> +		} else {
> +			sms->submit.ud[offset] = ref & 0x0f;
> +		}

Regards,
-Denis

^ permalink raw reply	[flat|nested] 4+ messages in thread

* [PATCHv2] Fix adding 8bit reference number
@ 2010-09-03 10:12 Aki Niemi
  2010-09-03 14:11 ` Denis Kenzior
  0 siblings, 1 reply; 4+ messages in thread
From: Aki Niemi @ 2010-09-03 10:12 UTC (permalink / raw)
  To: ofono

[-- Attachment #1: Type: text/plain, Size: 1384 bytes --]

---
 src/sms.c |   17 +++++++++++------
 1 files changed, 11 insertions(+), 6 deletions(-)

diff --git a/src/sms.c b/src/sms.c
index 7298563..088119d 100644
--- a/src/sms.c
+++ b/src/sms.c
@@ -522,7 +522,7 @@ static gboolean tx_next(gpointer user_data)
 }
 
 static void set_ref_and_to(GSList *msg_list, guint16 ref, int offset,
-				const char *to)
+				gboolean use_16bit, const char *to)
 {
 	GSList *l;
 	struct sms *sms;
@@ -530,12 +530,17 @@ static void set_ref_and_to(GSList *msg_list, guint16 ref, int offset,
 	for (l = msg_list; l; l = l->next) {
 		sms = l->data;
 
-		if (offset != 0) {
+		sms_address_from_string(&sms->submit.daddr, to);
+
+		if (offset == 0)
+			continue;
+
+		if (use_16bit) {
 			sms->submit.ud[offset] = (ref & 0xf0) >> 8;
-			sms->submit.ud[offset+1] = (ref & 0x0f);
+			sms->submit.ud[offset+1] = ref & 0x0f;
+		} else {
+			sms->submit.ud[offset] = ref & 0x0f;
 		}
-
-		sms_address_from_string(&sms->submit.daddr, to);
 	}
 }
 
@@ -621,7 +626,7 @@ static DBusMessage *sms_send_message(DBusConnection *conn, DBusMessage *msg,
 	if (!msg_list)
 		return __ofono_error_invalid_format(msg);
 
-	set_ref_and_to(msg_list, sms->ref, ref_offset, to);
+	set_ref_and_to(msg_list, sms->ref, ref_offset, TRUE, to);
 	DBG("ref: %d, offset: %d", sms->ref, ref_offset);
 
 	if (ref_offset != 0) {
-- 
1.7.0.4


^ permalink raw reply related	[flat|nested] 4+ messages in thread

* Re: [PATCHv2] Fix adding 8bit reference number
  2010-09-03 10:12 [PATCHv2] Fix adding 8bit reference number Aki Niemi
@ 2010-09-03 14:11 ` Denis Kenzior
  0 siblings, 0 replies; 4+ messages in thread
From: Denis Kenzior @ 2010-09-03 14:11 UTC (permalink / raw)
  To: ofono

[-- Attachment #1: Type: text/plain, Size: 212 bytes --]

Hi Aki,

On 09/03/2010 05:12 AM, Aki Niemi wrote:
> ---
>  src/sms.c |   17 +++++++++++------
>  1 files changed, 11 insertions(+), 6 deletions(-)
> 

Patch has been applied, thanks.

Regards,
-Denis

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2010-09-03 14:11 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-09-03 10:12 [PATCHv2] Fix adding 8bit reference number Aki Niemi
2010-09-03 14:11 ` Denis Kenzior
  -- strict thread matches above, loose matches on Subject: below --
2010-09-02  7:47 Aki Niemi
2010-09-02 17:16 ` Denis Kenzior

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.