stkutil: Don't include USSD text unless needed

This commit is contained in:
Denis Kenzior 2010-09-15 11:58:00 -05:00
parent 47ddc4b70d
commit a0d476281d
2 changed files with 12 additions and 3 deletions

View File

@ -4177,11 +4177,19 @@ static gboolean build_dataobj_ussd_text(struct stk_tlv_builder *tlv,
const struct stk_ussd_text *text = data;
unsigned char tag = STK_DATA_OBJECT_TYPE_TEXT;
stk_tlv_builder_open_container(tlv, cr, tag, TRUE);
if (text->has_text == FALSE)
return TRUE;
if (stk_tlv_builder_open_container(tlv, cr, tag, TRUE) != TRUE)
return FALSE;
if (text->len > 0) {
stk_tlv_builder_append_byte(tlv, text->dcs);
stk_tlv_builder_append_bytes(tlv, text->text, text->len);
if (stk_tlv_builder_append_byte(tlv, text->dcs) != TRUE)
return FALSE;
if (stk_tlv_builder_append_bytes(tlv, text->text,
text->len) != TRUE)
return FALSE;
}
return stk_tlv_builder_close_container(tlv);

View File

@ -1377,6 +1377,7 @@ struct stk_answer_text {
};
struct stk_ussd_text {
ofono_bool_t has_text;
const unsigned char *text;
int dcs;
int len;