diff options
author | Alon Zakai <alonzakai@gmail.com> | 2018-11-26 19:01:33 -0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-11-26 19:01:33 -0800 |
commit | 3eea53509fb6275c3fd39060129396a98ef13ab5 (patch) | |
tree | aebcc624db4b8a2c460dc5c3ce575fa216efdbbe | |
parent | 9f49e3d9c92703c3f5cf3589a78a3318bfe2bca4 (diff) | |
download | binaryen-3eea53509fb6275c3fd39060129396a98ef13ab5.tar.gz binaryen-3eea53509fb6275c3fd39060129396a98ef13ab5.tar.bz2 binaryen-3eea53509fb6275c3fd39060129396a98ef13ab5.zip |
initialize binary writer debug info even without a source map, as debug info may exist without a source map (#1733)
-rw-r--r-- | src/wasm-binary.h | 1 | ||||
-rw-r--r-- | src/wasm/wasm-binary.cpp | 6 |
2 files changed, 6 insertions, 1 deletions
diff --git a/src/wasm-binary.h b/src/wasm-binary.h index 2a455b808..3dac4de06 100644 --- a/src/wasm-binary.h +++ b/src/wasm-binary.h @@ -721,6 +721,7 @@ public: void writeLateUserSections(); void writeUserSection(const UserSection& section); + void initializeDebugInfo(); void writeSourceMapProlog(); void writeSourceMapEpilog(); void writeDebugLocation(const Function::DebugLocation& loc); diff --git a/src/wasm/wasm-binary.cpp b/src/wasm/wasm-binary.cpp index 153894906..97e70aeab 100644 --- a/src/wasm/wasm-binary.cpp +++ b/src/wasm/wasm-binary.cpp @@ -44,6 +44,7 @@ void WasmBinaryWriter::write() { writeEarlyUserSections(); + initializeDebugInfo(); if (sourceMap) { writeSourceMapProlog(); } @@ -484,8 +485,11 @@ void WasmBinaryWriter::writeSymbolMap() { file.close(); } -void WasmBinaryWriter::writeSourceMapProlog() { +void WasmBinaryWriter::initializeDebugInfo() { lastDebugLocation = { 0, /* lineNumber = */ 1, 0 }; +} + +void WasmBinaryWriter::writeSourceMapProlog() { *sourceMap << "{\"version\":3,\"sources\":["; for (size_t i = 0; i < wasm->debugInfoFileNames.size(); i++) { if (i > 0) *sourceMap << ","; |