summaryrefslogtreecommitdiffstats
path: root/drivers/ifxmodem
diff options
context:
space:
mode:
authorMarcel Holtmann <marcel@holtmann.org>2012-02-10 09:42:54 +0100
committerMarcel Holtmann <marcel@holtmann.org>2012-02-10 09:42:54 +0100
commitb88a621528ff86145ed33be87b7fc65d66cd04cf (patch)
tree176684fd0a82c2d55e1a335419341a5994457b15 /drivers/ifxmodem
parent9d666ccce08e89aa32314487f12438adcd636126 (diff)
downloadofono-b88a621528ff86145ed33be87b7fc65d66cd04cf.tar.bz2
ifxmodem: Remove another usage g_utf8_validate
Diffstat (limited to 'drivers/ifxmodem')
-rw-r--r--drivers/ifxmodem/voicecall.c15
1 files changed, 8 insertions, 7 deletions
diff --git a/drivers/ifxmodem/voicecall.c b/drivers/ifxmodem/voicecall.c
index 534a97ab..13ed90b4 100644
--- a/drivers/ifxmodem/voicecall.c
+++ b/drivers/ifxmodem/voicecall.c
@@ -852,7 +852,8 @@ static void xlema_read(gboolean ok, GAtResult *result, gpointer user_data)
GAtResultIter iter;
int num = 0;
int index, total_cnt;
- const char *number, *end;
+ const char *number;
+ int len;
if (!ok) {
DBG("Emergency number list read failed");
@@ -879,12 +880,12 @@ static void xlema_read(gboolean ok, GAtResult *result, gpointer user_data)
if (!g_at_result_iter_next_string(&iter, &number))
continue;
- if (g_utf8_validate(number, -1, &end) == FALSE) {
- vd->en_list[num] = g_strndup(number, end - number);
- ofono_warn("Malformed emergency number: %s",
- vd->en_list[num++]);
- } else
- vd->en_list[num++] = g_strdup(number);
+ len = strspn(number, "0123456789");
+ vd->en_list[num++] = g_strndup(number, len);
+
+ if (number[len] != '\0')
+ ofono_warn("Malformed emergency number: %.*s",
+ len, number);
}
ofono_voicecall_en_list_notify(vc, vd->en_list);