-
Notifications
You must be signed in to change notification settings - Fork 11
Closed
Description
blade-ink version: 1.1.1
What is wrong
I get the following stacktrace when trying to convert my story state to JSON:
java.lang.ArrayIndexOutOfBoundsException: Index 26 out of bounds for length 26
at com.bladecoder.ink.runtime.Json.writeRuntimeObject(Json.java:174) ~[blade-ink-1.1.1.jar:na]
at com.bladecoder.ink.runtime.Json.writeListRuntimeObjs(Json.java:48) ~[blade-ink-1.1.1.jar:na]
at com.bladecoder.ink.runtime.Flow$2.write(Flow.java:50) ~[blade-ink-1.1.1.jar:na]
at com.bladecoder.ink.runtime.SimpleJson$Writer.writePropertyString(SimpleJson.java:388) ~[blade-ink-1.1.1.jar:na]
at com.bladecoder.ink.runtime.SimpleJson$Writer.writeProperty(SimpleJson.java:306) ~[blade-ink-1.1.1.jar:na]
at com.bladecoder.ink.runtime.Flow.writeJson(Flow.java:47) ~[blade-ink-1.1.1.jar:na]
at com.bladecoder.ink.runtime.StoryState$2.write(StoryState.java:1240) ~[blade-ink-1.1.1.jar:na]
at com.bladecoder.ink.runtime.SimpleJson$Writer.writePropertyString(SimpleJson.java:388) ~[blade-ink-1.1.1.jar:na]
at com.bladecoder.ink.runtime.SimpleJson$Writer.writeProperty(SimpleJson.java:306) ~[blade-ink-1.1.1.jar:na]
at com.bladecoder.ink.runtime.StoryState.writeJson(StoryState.java:1237) ~[blade-ink-1.1.1.jar:na]
at com.bladecoder.ink.runtime.StoryState.toJson(StoryState.java:924) ~[blade-ink-1.1.1.jar:na]
Possibly useful information
The stacktrace points to a place in the code where an array (controlCommandNames) is being accessed at index 26, but there are only 26 entries in it (max index would be 25). The index is coming from ControlCommand.CommandType.ordinal(), which is an enum that indeed has 27 values, so the last value would have an ordinal of 26.
My best guess is that this is related to supporting the latest version of Ink, and the controlCommandNames array was supposed to be updated to add a new entry and it was missed?
Metadata
Metadata
Assignees
Labels
No labels