]> Repositorios git - scryer-prolog.git/commitdiff
dereference head of list in is_continuable (#1417)
authorMark Thom <[email protected]>
Mon, 11 Apr 2022 23:01:47 +0000 (17:01 -0600)
committerMark Thom <[email protected]>
Mon, 11 Apr 2022 23:01:47 +0000 (17:01 -0600)
src/machine/partial_string.rs

index b4b3714ab089196ce3f9d92b803aa71c47be538e..7938b2023061903fe123d22922c184118c068993 100644 (file)
@@ -226,7 +226,13 @@ impl<'a> HeapPStrIter<'a> {
                    return name == atom!(".") && arity == 2;
                }
                (HeapCellValueTag::Lis, h) => {
-                   return read_heap_cell!(self.heap[h],
+                   let value = self.heap[h];
+                   let value = heap_bound_store(
+                       self.heap,
+                       heap_bound_deref(self.heap, value),
+                   );
+
+                   return read_heap_cell!(value,
                        (HeapCellValueTag::Atom, (name, arity)) => {
                            arity == 0 && name.as_char().is_some()
                        }