Don't hardcode
authorDenis Kenzior <denkenz@gmail.com>
Thu, 2 Jul 2009 17:55:01 +0000 (12:55 -0500)
committerDenis Kenzior <denkenz@gmail.com>
Fri, 3 Jul 2009 00:03:04 +0000 (19:03 -0500)
src/smsutil.c
src/smsutil.h

index dbcb508..139b360 100644 (file)
@@ -2737,8 +2737,7 @@ char *cbs_decode_text(GSList *cbs_list, char *iso639_lang)
                        return NULL;
 
                if (curch == SMS_CHARSET_7BIT) {
-                       /* CBS can have up to 93 chars in 7Bit */
-                       bufsize += 93;
+                       bufsize += CBS_MAX_GSM_CHARS;
 
                        if (iso639)
                                bufsize -= 3;
@@ -2783,11 +2782,14 @@ char *cbs_decode_text(GSList *cbs_list, char *iso639_lang)
                        taken = sms_udh_iter_get_udh_length(&iter) + 1;
 
                if (charset == SMS_CHARSET_7BIT) {
-                       unsigned char unpacked[93];
+                       unsigned char unpacked[CBS_MAX_GSM_CHARS];
                        long written;
-                       int max_chars = sms_text_capacity_gsm(93, taken);
+                       int max_chars;
                        int i;
 
+                       max_chars =
+                               sms_text_capacity_gsm(CBS_MAX_GSM_CHARS, taken);
+
                        unpack_7bit_own_buf(ud + taken, 82 - taken,
                                                taken, FALSE, max_chars,
                                                &written, 0, unpacked);
index 41c5166..f04434d 100644 (file)
@@ -19,7 +19,7 @@
  *
  */
 
-#define CBS_PAYLOAD_CHARACTERS 93
+#define CBS_MAX_GSM_CHARS 93
 
 enum sms_type {
        SMS_TYPE_DELIVER = 0,