From 5b29a636cb092bcc9e21568db0dfe845538d34c0 Mon Sep 17 00:00:00 2001 From: Alon Zakai Date: Thu, 28 Apr 2016 09:58:22 -0700 Subject: avoid dynamic allocas (#410) --- src/wasm-s-parser.h | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'src/wasm-s-parser.h') diff --git a/src/wasm-s-parser.h b/src/wasm-s-parser.h index a2a0e0027..674341d1e 100644 --- a/src/wasm-s-parser.h +++ b/src/wasm-s-parser.h @@ -1066,8 +1066,9 @@ private: Element& curr = *s[i]; assert(curr[0]->str() == SEGMENT); const char *input = curr[2]->c_str(); - char data[strlen(input)]; - char *write = data; + std::vector data; + data.resize(strlen(input)); + char *write = (char*)&data[0]; while (1) { if (input[0] == 0) break; if (input[0] == '\\') { @@ -1100,7 +1101,7 @@ private: *write++ = input[0]; input++; } - wasm.memory.segments.emplace_back(atoi(curr[1]->c_str()), (const char*)data, write - data); + wasm.memory.segments.emplace_back(atoi(curr[1]->c_str()), (const char*)&data[0], write - (const char*)&data[0]); i++; } } -- cgit v1.2.3