summaryrefslogtreecommitdiffstats
path: root/drivers/atmodem
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/atmodem')
-rw-r--r--drivers/atmodem/ussd.c18
1 files changed, 9 insertions, 9 deletions
diff --git a/drivers/atmodem/ussd.c b/drivers/atmodem/ussd.c
index 13b049f3..1e1fc255 100644
--- a/drivers/atmodem/ussd.c
+++ b/drivers/atmodem/ussd.c
@@ -73,15 +73,15 @@ static void cusd_parse(GAtResult *result, struct ofono_ussd *ussd)
if (!g_at_result_iter_next_string(&iter, &content))
goto out;
- if (!g_at_result_iter_next_number(&iter, &dcs))
- goto out;
-
- if (!cbs_dcs_decode(dcs, &udhi, NULL, &charset,
- &compressed, NULL, &iso639))
- goto out;
-
- if (udhi || compressed || iso639)
- goto out;
+ if (g_at_result_iter_next_number(&iter, &dcs)) {
+ if (!cbs_dcs_decode(dcs, &udhi, NULL, &charset,
+ &compressed, NULL, &iso639))
+ goto out;
+
+ if (udhi || compressed || iso639)
+ goto out;
+ } else
+ charset = SMS_CHARSET_7BIT;
if (charset == SMS_CHARSET_7BIT)
converted = convert_gsm_to_utf8((const guint8 *) content,