[Bugfix][ZXIC-332][AT]fix at long only 48
Change-Id: I752168b5c6b8c4267ae83ef2782f90c1db5a71f5
(cherry picked from commit 815847a944ce2f243a3dce7adba7956d3bd8c0d0)
diff --git a/cap/zx297520v3/src/lynq/framework/lynq-atcid/zxic_at_func_wrapper.cpp b/cap/zx297520v3/src/lynq/framework/lynq-atcid/zxic_at_func_wrapper.cpp
index 3037e62..99794fb 100755
--- a/cap/zx297520v3/src/lynq/framework/lynq-atcid/zxic_at_func_wrapper.cpp
+++ b/cap/zx297520v3/src/lynq/framework/lynq-atcid/zxic_at_func_wrapper.cpp
@@ -29,7 +29,7 @@
template <int n>
void zxic_at_callback(unsigned char * input, unsigned char * output)
{
- char org_cmd[64] = {0};
+ char *org_cmd = NULL;
if (input == NULL || output == NULL)
{
ALOGE("zxic_at_callback invalid params %p-%p \n", input, output);
@@ -37,6 +37,12 @@
}
strcpy((char*)output, "\r\n");
struct callback_entry *pEntry = g_all_reg_entry[n];
+ org_cmd = new char [strlen(input) + 32];
+ if (org_cmd == NULL)
+ {
+ strcat(output, "+CME ERROR: 100\r\n");
+ }
+ org_cmd[0] = '\0';
strcat(org_cmd, pEntry->at_prefix);
strcat(org_cmd, (char *)input);
pEntry->plugin_entry->output_buffer = (char*)output;
@@ -44,6 +50,7 @@
pEntry->plugin_entry->atsvc_incb(org_cmd, strlen(org_cmd));
pEntry->plugin_entry->output_buffer = NULL;
ALOGD("zxic_at_callback output -- %s \n", output);
+ delete [] org_cmd;
//return 0;
}