From dbbe96ae5c343f0e803de6ee508207a62571534f Mon Sep 17 00:00:00 2001 From: Courtney Strachan Date: Sun, 2 Mar 2025 07:57:23 -0800 Subject: [PATCH 1/2] Fixed json null value parsing --- core/encoding/json/marshal.odin | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/core/encoding/json/marshal.odin b/core/encoding/json/marshal.odin index 020facd14..ed6de2f52 100644 --- a/core/encoding/json/marshal.odin +++ b/core/encoding/json/marshal.odin @@ -176,7 +176,13 @@ marshal_to_writer :: proc(w: io.Writer, v: any, opt: ^Marshal_Options) -> (err: return .Unsupported_Type case runtime.Type_Info_Pointer: - return .Unsupported_Type + ptr := a.(rawptr) + + if ptr == nil { + io.write_string(w, "null") or_return + } else { + return .Unsupported_Type + } case runtime.Type_Info_Multi_Pointer: return .Unsupported_Type From 69ad94d8a8c6b96952224faa259a4edbce8eabb0 Mon Sep 17 00:00:00 2001 From: Courtney Strachan Date: Sun, 5 Oct 2025 19:22:04 -0700 Subject: [PATCH 2/2] Followup fix to #4895 --- core/encoding/json/marshal.odin | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/core/encoding/json/marshal.odin b/core/encoding/json/marshal.odin index 2fb507edf..e563c326a 100644 --- a/core/encoding/json/marshal.odin +++ b/core/encoding/json/marshal.odin @@ -176,9 +176,7 @@ marshal_to_writer :: proc(w: io.Writer, v: any, opt: ^Marshal_Options) -> (err: return .Unsupported_Type case runtime.Type_Info_Pointer: - ptr := a.(rawptr) - - if ptr == nil { + if v.id == typeid_of(Null) { io.write_string(w, "null") or_return } else { return .Unsupported_Type