From 2f96f49c2d2c8679841c790e9dd7d9f1b6f3fed1 Mon Sep 17 00:00:00 2001 From: "Benjamin J. Culkin" Date: Sun, 16 Sep 2018 21:12:35 -0300 Subject: Large update A large update, this contains much debugging of the CL FORMAT routines, as well as a few other minor changes. --- base/src/main/java/bjc/utils/esodata/SingleTape.java | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'base/src/main/java/bjc/utils/esodata') diff --git a/base/src/main/java/bjc/utils/esodata/SingleTape.java b/base/src/main/java/bjc/utils/esodata/SingleTape.java index d57bc7f..be9d64b 100644 --- a/base/src/main/java/bjc/utils/esodata/SingleTape.java +++ b/base/src/main/java/bjc/utils/esodata/SingleTape.java @@ -79,6 +79,8 @@ public class SingleTape implements Tape { @Override public T item() { + if (pos < 0 || pos >= backing.size()) return null; + return backing.get(pos); } @@ -150,13 +152,12 @@ public class SingleTape implements Tape { @Override public boolean right(final int amt) { - if(pos + amt >= backing.size() - 1) { + if(pos + amt > backing.size()) { if(autoExtend) { while(pos + amt >= backing.size() - 1) { backing.add(null); } - } else - return false; + } else return false; } pos += amt; -- cgit v1.2.3