@@ -186,24 +186,24 @@ private Object jsonStrPrepare(JSONData data, String key, Object holder) {
186186 @ TruffleBoundary
187187 private Object jsonStrPrepareArray (JSONData data , int key , DynamicObject holder ) {
188188 Object value = JSObject .get (holder , key );
189- return jsonStrPreparePart2 (data , key , holder , value );
189+ return jsonStrPreparePart2 (data , String . valueOf ( key ) , holder , value );
190190 }
191191
192192 @ TruffleBoundary
193193 private Object jsonStrPrepareForeign (JSONData data , int key , Object holder ) {
194194 assert JSGuards .isForeignObject (holder );
195195 Object value = truffleRead (holder , key );
196- return jsonStrPreparePart2 (data , key , holder , value );
196+ return jsonStrPreparePart2 (data , String . valueOf ( key ) , holder , value );
197197 }
198198
199- private Object jsonStrPreparePart2 (JSONData data , Object key , Object holder , Object valueArg ) {
199+ private Object jsonStrPreparePart2 (JSONData data , String key , Object holder , Object valueArg ) {
200200 Object value = valueArg ;
201201 if (JSRuntime .isObject (value ) || JSRuntime .isBigInt (value )) {
202- value = jsonStrPrepareObject (JSRuntime . toPropertyKey ( key ) , value );
202+ value = jsonStrPrepareObject (key , value );
203203 }
204204
205205 if (data .getReplacerFnObj () != null ) {
206- value = JSRuntime .call (data .getReplacerFnObj (), holder , new Object []{JSRuntime . toPropertyKey ( key ) , value });
206+ value = JSRuntime .call (data .getReplacerFnObj (), holder , new Object []{key , value });
207207 }
208208 if (JSObject .isJSObject (value )) {
209209 return jsonStrPrepareJSObject ((DynamicObject ) value );
0 commit comments