Skip to content

Commit 587b2b1

Browse files
committed
Maintain index when expanding arrays
1 parent 4a4ceb1 commit 587b2b1

File tree

3 files changed

+15
-11
lines changed

3 files changed

+15
-11
lines changed

dist/easycoder-min.js

Lines changed: 9 additions & 9 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

dist/easycoder.js

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1666,7 +1666,6 @@ const EasyCoder_Core = {
16661666
const symbol = program.getSymbolRecord(command.symbol);
16671667
const oldCount = symbol.elements;
16681668
symbol.elements = program.getValue(command.value);
1669-
symbol.index = 0;
16701669
if (symbol.elements > oldCount) {
16711670
for (var n = oldCount; n < symbol.elements; n++) {
16721671
symbol.value.push({});
@@ -1676,6 +1675,9 @@ const EasyCoder_Core = {
16761675
symbol.value = symbol.value.slice(0, symbol.elements);
16771676
symbol.element = symbol.element.slice(0, symbol.elements);
16781677
}
1678+
if (symbol.index >= symbol.elements) {
1679+
symbol.index = symbol.elements - 1;
1680+
}
16791681
break;
16801682
case `setElement`:
16811683
targetRecord = program.getSymbolRecord(command.target);

js/easycoder/Core.js

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1666,7 +1666,6 @@ const EasyCoder_Core = {
16661666
const symbol = program.getSymbolRecord(command.symbol);
16671667
const oldCount = symbol.elements;
16681668
symbol.elements = program.getValue(command.value);
1669-
symbol.index = 0;
16701669
if (symbol.elements > oldCount) {
16711670
for (var n = oldCount; n < symbol.elements; n++) {
16721671
symbol.value.push({});
@@ -1676,6 +1675,9 @@ const EasyCoder_Core = {
16761675
symbol.value = symbol.value.slice(0, symbol.elements);
16771676
symbol.element = symbol.element.slice(0, symbol.elements);
16781677
}
1678+
if (symbol.index >= symbol.elements) {
1679+
symbol.index = symbol.elements - 1;
1680+
}
16791681
break;
16801682
case `setElement`:
16811683
targetRecord = program.getSymbolRecord(command.target);

0 commit comments

Comments
 (0)