Merge pull request #3258 from no382001/fix_load_xml/3
load_xml was returning a single term instead of a list of nodes
This commit is contained in:
@@ -8466,7 +8466,12 @@ impl Machine {
|
||||
match roxmltree::Document::parse(&string.as_str()) {
|
||||
Ok(doc) => {
|
||||
let result = self.xml_node_to_term(doc.root_element())?;
|
||||
unify!(self.machine_st, self.machine_st.registers[2], result);
|
||||
let list = sized_iter_to_heap_list(
|
||||
&mut self.machine_st.heap,
|
||||
1, // just one root element
|
||||
std::iter::once(result),
|
||||
)?;
|
||||
unify!(self.machine_st, self.machine_st.registers[2], list);
|
||||
}
|
||||
_ => {
|
||||
self.machine_st.fail = true;
|
||||
|
||||
Reference in New Issue
Block a user