Skip to content

Commit 34304e2

Browse files
committed
Merge pull request processing#4519 from inkwellsiesta/master
fixed iterator remove() methods so they dont skip container elements
2 parents 348e2b4 + 731d37a commit 34304e2

6 files changed

Lines changed: 10 additions & 1 deletion

File tree

core/src/processing/data/FloatDict.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -158,6 +158,7 @@ public Iterator<String> keyIterator() {
158158

159159
public void remove() {
160160
removeIndex(index);
161+
index--;
161162
}
162163

163164
public String next() {
@@ -218,6 +219,7 @@ public Iterator<Float> valueIterator() {
218219

219220
public void remove() {
220221
removeIndex(index);
222+
index--;
221223
}
222224

223225
public Float next() {

core/src/processing/data/FloatList.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -793,6 +793,7 @@ public Iterator<Float> iterator() {
793793

794794
public void remove() {
795795
FloatList.this.remove(index);
796+
index--;
796797
}
797798

798799
public Float next() {

core/src/processing/data/IntDict.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -159,6 +159,7 @@ public Iterator<String> keyIterator() {
159159

160160
public void remove() {
161161
removeIndex(index);
162+
index--;
162163
}
163164

164165
public String next() {
@@ -219,6 +220,7 @@ public Iterator<Integer> valueIterator() {
219220

220221
public void remove() {
221222
removeIndex(index);
223+
index--;
222224
}
223225

224226
public Integer next() {

core/src/processing/data/IntList.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -737,6 +737,7 @@ public Iterator<Integer> iterator() {
737737

738738
public void remove() {
739739
IntList.this.remove(index);
740+
index--;
740741
}
741742

742743
public Integer next() {

core/src/processing/data/StringDict.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -160,6 +160,7 @@ public Iterator<String> keyIterator() {
160160

161161
public void remove() {
162162
removeIndex(index);
163+
index--;
163164
}
164165

165166
public String next() {
@@ -219,6 +220,7 @@ public Iterator<String> valueIterator() {
219220

220221
public void remove() {
221222
removeIndex(index);
223+
index--;
222224
}
223225

224226
public String next() {

core/src/processing/data/StringList.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -657,6 +657,7 @@ public Iterator<String> iterator() {
657657

658658
public void remove() {
659659
StringList.this.remove(index);
660+
index--;
660661
}
661662

662663
public String next() {
@@ -768,4 +769,4 @@ public String toString() {
768769
sb.append(" ]");
769770
return sb.toString();
770771
}
771-
}
772+
}

0 commit comments

Comments
 (0)