diff options
author | Alon Zakai <alonzakai@gmail.com> | 2016-08-16 21:23:29 -0700 |
---|---|---|
committer | Alon Zakai <alonzakai@gmail.com> | 2016-09-07 09:55:01 -0700 |
commit | e0809680bb82ecfc950aef97537827442b559fcf (patch) | |
tree | d7d34796924aa7a8b83e5f9ea16e47609a723e92 /src/wasm-s-parser.h | |
parent | ada1e2671ac3095e62f52932d3358489fdf195f0 (diff) | |
download | binaryen-e0809680bb82ecfc950aef97537827442b559fcf.tar.gz binaryen-e0809680bb82ecfc950aef97537827442b559fcf.tar.bz2 binaryen-e0809680bb82ecfc950aef97537827442b559fcf.zip |
support (data .. ..), separate strings in a data()
Diffstat (limited to 'src/wasm-s-parser.h')
-rw-r--r-- | src/wasm-s-parser.h | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/src/wasm-s-parser.h b/src/wasm-s-parser.h index 7ea9a521e..429dde417 100644 --- a/src/wasm-s-parser.h +++ b/src/wasm-s-parser.h @@ -1394,14 +1394,14 @@ private: } else { offset = allocator.alloc<Const>()->set(Literal(int32_t(0))); } - const char *input = s[i]->c_str(); - if (auto size = strlen(input)) { - std::vector<char> data; - stringToBinary(input, size, data); - wasm.memory.segments.emplace_back(offset, data.data(), data.size()); - } else { - wasm.memory.segments.emplace_back(offset, "", 0); + std::vector<char> data; + while (i < s.size()) { + const char *input = s[i++]->c_str(); + if (auto size = strlen(input)) { + stringToBinary(input, size, data); + } } + wasm.memory.segments.emplace_back(offset, data.data(), data.size()); } void parseExport(Element& s) { |