diff options
author | Marcel Holtmann <marcel@holtmann.org> | 2010-06-16 16:49:14 +0200 |
---|---|---|
committer | Marcel Holtmann <marcel@holtmann.org> | 2010-06-16 16:49:14 +0200 |
commit | fd3a89091c2185feacb76acfb2e69791c1afa592 (patch) | |
tree | a769283558107ed1dfd8dbc90d92794f94a6852d | |
parent | e2790ba6465e956a167b1e2622641d941c721a51 (diff) | |
download | ofono-fd3a89091c2185feacb76acfb2e69791c1afa592.tar.bz2 |
Fix previous commit that broke reference to PDU string buffer
-rw-r--r-- | src/stk.c | 19 |
1 files changed, 11 insertions, 8 deletions
@@ -84,27 +84,30 @@ void ofono_stk_proactive_command_notify(struct ofono_stk *stk, { struct stk_command *cmd; char *buf; + int i; 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); - } + if (!buf) + return; + + for (i = 0; i < length; i ++) + sprintf(buf + i * 2, "%02hhx", pdu[i]); cmd = stk_command_new_from_pdu(pdu, length); if (!cmd) { ofono_error("Can't parse proactive command: %s", buf); /* TODO: return TERMINAL RESPONSE with permanent error */ - return; + goto done; } /* TODO: execute */ + ofono_info("Proactive command PDU: %s", buf); stk_command_free(cmd); + +done: + g_free(buf); } int ofono_stk_driver_register(const struct ofono_stk_driver *d) |