diff --git a/src/library/vm/vm_string.cpp b/src/library/vm/vm_string.cpp index d09e379e76..d03840aed4 100644 --- a/src/library/vm/vm_string.cpp +++ b/src/library/vm/vm_string.cpp @@ -488,7 +488,7 @@ vm_obj string_iterator_extract(vm_obj const & it1, vm_obj const & it2) { size_t pos2 = it_pos(it2); if (pos2 < pos1) return mk_vm_none(); - return mk_vm_some(to_obj(s1.m_value.substr(pos1, pos2 - pos1), pos2 - pos1)); + return mk_vm_some(to_obj(s1.m_value.substr(pos1, pos2 - pos1), it_remaining(it1) - it_remaining(it2))); } vm_obj string_hash(vm_obj const & s) {