diff options
author | Aleksander Morgado <aleksander@lanedo.com> | 2012-02-07 19:05:10 +0100 |
---|---|---|
committer | Dan Williams <dcbw@redhat.com> | 2012-02-07 14:02:20 -0600 |
commit | 809a520ac876b3bb79cbc9056a23704ef232a9c7 (patch) | |
tree | 6d3b7b70840ccf387e9d4e50ccc9dd6368eb0030 | |
parent | 5127fd0ee1aef86c98227ac4df1c4e5ca9afefe6 (diff) |
gsm: use new common charset converter when parsing operator name/code
-rw-r--r-- | src/mm-generic-gsm.c | 31 |
1 files changed, 1 insertions, 30 deletions
diff --git a/src/mm-generic-gsm.c b/src/mm-generic-gsm.c index 3d65d34f..ffa78cd4 100644 --- a/src/mm-generic-gsm.c +++ b/src/mm-generic-gsm.c @@ -2842,35 +2842,6 @@ reg_info_updated (MMGenericGsm *self, } } -static void -convert_operator_from_ucs2 (char **operator) -{ - const char *p; - char *converted; - size_t len; - - g_return_if_fail (operator != NULL); - g_return_if_fail (*operator != NULL); - - p = *operator; - len = strlen (p); - - /* Len needs to be a multiple of 4 for UCS2 */ - if ((len < 4) || ((len % 4) != 0)) - return; - - while (*p) { - if (!isxdigit (*p++)) - return; - } - - converted = mm_modem_charset_hex_to_utf8 (*operator, MM_MODEM_CHARSET_UCS2); - if (converted) { - g_free (*operator); - *operator = converted; - } -} - static char * parse_operator (const char *reply, MMModemCharset cur_charset) { @@ -2900,7 +2871,7 @@ parse_operator (const char *reply, MMModemCharset cur_charset) * character set. */ if (cur_charset == MM_MODEM_CHARSET_UCS2) - convert_operator_from_ucs2 (&operator); + operator = mm_charset_take_and_convert_to_utf8 (operator, MM_MODEM_CHARSET_UCS2); /* Ensure the operator name is valid UTF-8 so that we can send it * through D-Bus and such. |