summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/stk.c15
1 files changed, 8 insertions, 7 deletions
diff --git a/src/stk.c b/src/stk.c
index e307a4e5..b95708e4 100644
--- a/src/stk.c
+++ b/src/stk.c
@@ -84,17 +84,19 @@ void ofono_stk_proactive_command_notify(struct ofono_stk *stk,
{
struct stk_command *cmd;
char *buf;
- int i;
- buf = g_try_new(char, length * 2 + 1);
- for (i = 0; i < length; i ++)
- sprintf(buf + i * 2, "%02hhx", pdu[i]);
- DBG("Proactive command PDU: %s", buf);
+ buf = g_try_malloc(length * 2 + 1);
+ if (buf) {
+ int i;
+ for (i = 0; i < length; i ++)
+ sprintf(buf + i * 2, "%02hhx", pdu[i]);
+ ofono_info("Proactive command PDU: %s", buf);
+ g_free(buf);
+ }
cmd = stk_command_new_from_pdu(pdu, length);
if (!cmd) {
ofono_error("Can't parse proactive command: %s", buf);
- g_free(buf);
/* TODO: return TERMINAL RESPONSE with permanent error */
return;
@@ -102,7 +104,6 @@ void ofono_stk_proactive_command_notify(struct ofono_stk *stk,
/* TODO: execute */
- g_free(buf);
stk_command_free(cmd);
}