broadband-modem: don't assume the returned string is always hex-encoded

This commit is contained in:
Aleksander Morgado
2013-02-22 19:43:49 +01:00
parent ca49af0c5d
commit b1bb8e30b4
3 changed files with 32 additions and 1 deletions
+6 -1
View File
@@ -4373,8 +4373,13 @@ decode_ussd_response (MMBroadbandModem *self,
if (p)
*p = '\0';
decoded = mm_iface_modem_3gpp_ussd_decode (MM_IFACE_MODEM_3GPP_USSD (self), str, error);
/* If reply doesn't seem to be hex; just return itself... */
if (!mm_utils_ishexstr (str))
decoded = g_strdup (str);
else
decoded = mm_iface_modem_3gpp_ussd_decode (MM_IFACE_MODEM_3GPP_USSD (self), str, error);
g_strfreev (items);
return decoded;
}