@@ -238,7 +238,7 @@ func encodeStructEmbedField(fieldType ast.Expr) {
238
238
case * ast.SelectorExpr :
239
239
if y .Sel .Name == "Number" {
240
240
_l (` stream.WriteObjectField("Number")` )
241
- _l (` stream.WriteRawOrNull ((string)(*val.Number))` )
241
+ _l (` stream.WriteRawOrZero ((string)(*val.Number))` )
242
242
_l (` stream.WriteMore()` )
243
243
} else if y .Sel .Name == "RawMessage" {
244
244
reportError (fmt .Errorf ("embed json.RawMessage is not supported" ))
@@ -260,7 +260,7 @@ func encodeStructEmbedField(fieldType ast.Expr) {
260
260
case * ast.SelectorExpr :
261
261
if x .Sel .Name == "Number" {
262
262
_l (` stream.WriteObjectField("Number")` )
263
- _l (` stream.WriteRawOrNull ((string)(val.Number))` )
263
+ _l (` stream.WriteRawOrZero ((string)(val.Number))` )
264
264
_l (` stream.WriteMore()` )
265
265
} else if x .Sel .Name == "RawMessage" {
266
266
reportError (fmt .Errorf ("embed json.RawMessage is not supported" ))
@@ -304,7 +304,9 @@ func genEncodeStmt(node ast.Node, val string) {
304
304
genEncodeStmt (x .X , "*" + val )
305
305
_l (" }" )
306
306
case * ast.SelectorExpr :
307
- if x .Sel .Name == "Number" || x .Sel .Name == "RawMessage" {
307
+ if x .Sel .Name == "Number" {
308
+ _f (" stream.WriteRawOrZero(string(%s))" , val )
309
+ } else if x .Sel .Name == "RawMessage" {
308
310
_f (" stream.WriteRawOrNull(string(%s))" , val )
309
311
}
310
312
default :
0 commit comments