Skip to content

Commit 65e3cd5

Browse files
committed
Fix new odin changes.
1 parent dc180fe commit 65e3cd5

File tree

2 files changed

+17
-16
lines changed

2 files changed

+17
-16
lines changed

src/server/marshal.odin

+6-6
Original file line numberDiff line numberDiff line change
@@ -2,14 +2,14 @@ package server
22

33
import "base:runtime"
44

5-
import "core:mem"
5+
import "core:encoding/json"
6+
import "core:io"
7+
import "core:log"
68
import "core:math/bits"
9+
import "core:mem"
10+
import "core:reflect"
711
import "core:strconv"
812
import "core:strings"
9-
import "core:reflect"
10-
import "core:io"
11-
import "core:encoding/json"
12-
import "core:log"
1313

1414
Marshal_Data_Error :: enum {
1515
None,
@@ -419,7 +419,7 @@ marshal_to_writer :: proc(
419419
case runtime.Type_Info_Struct:
420420
opt_write_start(w, opt, '{') or_return
421421

422-
for name, i in info.names {
422+
for name, i in info.names[0:info.field_count] {
423423
id := info.types[i].id
424424
data := rawptr(uintptr(v.data) + info.offsets[i])
425425

src/server/unmarshal.odin

+11-10
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,9 @@ package server
33
import "base:runtime"
44

55
import "core:encoding/json"
6-
import "core:strings"
7-
import "core:mem"
86
import "core:fmt"
7+
import "core:mem"
8+
import "core:strings"
99

1010
/*
1111
Right now union handling is type specific so you can only have one struct type, int type, etc.
@@ -33,8 +33,8 @@ unmarshal :: proc(
3333
case json.Object:
3434
#partial switch variant in type_info.variant {
3535
case Type_Info_Struct:
36-
for field, i in variant.names {
37-
a := any{
36+
for field, i in variant.names[0:variant.field_count] {
37+
a := any {
3838
rawptr(uintptr(v.data) + uintptr(variant.offsets[i])),
3939
variant.types[i].id,
4040
}
@@ -78,11 +78,12 @@ unmarshal :: proc(
7878
case Type_Info_Dynamic_Array:
7979
array := (^mem.Raw_Dynamic_Array)(v.data)
8080
if array.data == nil {
81-
array.data = mem.alloc(
82-
len(j) * variant.elem_size,
83-
variant.elem.align,
84-
allocator,
85-
) or_else panic("OOM")
81+
array.data =
82+
mem.alloc(
83+
len(j) * variant.elem_size,
84+
variant.elem.align,
85+
allocator,
86+
) or_else panic("OOM")
8687
array.len = len(j)
8788
array.cap = len(j)
8889
array.allocator = allocator
@@ -91,7 +92,7 @@ unmarshal :: proc(
9192
}
9293

9394
for i in 0 ..< array.len {
94-
a := any{
95+
a := any {
9596
rawptr(
9697
uintptr(array.data) + uintptr(variant.elem_size * i),
9798
),

0 commit comments

Comments
 (0)