diff --git a/core/encoding/json/marshal.odin b/core/encoding/json/marshal.odin index e53ab9a7c..80b2e4dd4 100644 --- a/core/encoding/json/marshal.odin +++ b/core/encoding/json/marshal.odin @@ -275,7 +275,39 @@ marshal_to_writer :: proc(w: io.Writer, v: any, opt: ^Marshal_Options) -> (err: map_cap := uintptr(runtime.map_cap(m^)) ks, vs, hs, _, _ := runtime.map_kvh_data_dynamic(m^, info.map_info) - if opt.sort_maps_by_key { + if !opt.sort_maps_by_key { + i := 0 + for bucket_index in 0.. (err: opt_write_key(w, opt, s.key) or_return marshal_to_writer(w, s.value, opt) or_return } - } else { - i := 0 - for bucket_index in 0..