|
|
|
@ -402,7 +402,7 @@ bool _upb_Decoder_CheckEnum(upb_Decoder* d, const char* ptr, upb_Message* msg, |
|
|
|
|
end = upb_Decoder_EncodeVarint32(v, end); |
|
|
|
|
|
|
|
|
|
if (!UPB_PRIVATE(_upb_Message_AddUnknown)(unknown_msg, buf, end - buf, |
|
|
|
|
&d->arena)) { |
|
|
|
|
&d->arena, false)) { |
|
|
|
|
_upb_Decoder_ErrorJmp(d, kUpb_DecodeStatus_OutOfMemory); |
|
|
|
|
} |
|
|
|
|
return false; |
|
|
|
@ -1265,8 +1265,9 @@ static const char* _upb_Decoder_DecodeUnknownField(upb_Decoder* d, |
|
|
|
|
// bounds checks are needed before adding the unknown field.
|
|
|
|
|
_upb_Decoder_IsDone(d, &ptr); |
|
|
|
|
const char* input_ptr = upb_EpsCopyInputStream_GetInputPtr(&d->input, ptr); |
|
|
|
|
if (!UPB_PRIVATE(_upb_Message_AddUnknown)( |
|
|
|
|
msg, input_start, input_ptr - input_start, &d->arena)) { |
|
|
|
|
if (!UPB_PRIVATE(_upb_Message_AddUnknown)(msg, input_start, |
|
|
|
|
input_ptr - input_start, |
|
|
|
|
&d->arena, d->input.aliasing)) { |
|
|
|
|
_upb_Decoder_ErrorJmp(d, kUpb_DecodeStatus_OutOfMemory); |
|
|
|
|
} |
|
|
|
|
} else if (wire_type == kUpb_WireType_StartGroup) { |
|
|
|
|