Fix a confusion between EndDataSectionEntry and EndDataSectionEntryBody.

This commit is contained in:
Dan Gohman
2017-09-08 17:12:32 -07:00
parent 3775fa4867
commit 2fa0a7a3a4

View File

@@ -295,7 +295,7 @@ pub fn parse_data_section(
loop { loop {
let data = match *parser.read() { let data = match *parser.read() {
ParserState::DataSectionEntryBodyChunk(data) => data, ParserState::DataSectionEntryBodyChunk(data) => data,
ParserState::EndDataSectionEntry => break, ParserState::EndDataSectionEntryBody => break,
ref s => return Err(SectionParsingError::WrongSectionContent(format!("{:?}", s))), ref s => return Err(SectionParsingError::WrongSectionContent(format!("{:?}", s))),
}; };
match runtime.declare_data_initialization(memory_index as MemoryIndex, offset, data) { match runtime.declare_data_initialization(memory_index as MemoryIndex, offset, data) {
@@ -304,6 +304,10 @@ pub fn parse_data_section(
}; };
offset += data.len(); offset += data.len();
} }
match *parser.read() {
ParserState::EndDataSectionEntry => (),
ref s => return Err(SectionParsingError::WrongSectionContent(format!("{:?}", s))),
};
} }
Ok(()) Ok(())
} }