google-protobuf 4.28.3 → 4.29.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/ext/google/protobuf_c/defs.c +0 -1
- data/ext/google/protobuf_c/message.c +15 -5
- data/ext/google/protobuf_c/protobuf.c +0 -2
- data/ext/google/protobuf_c/ruby-upb.c +6703 -6666
- data/ext/google/protobuf_c/ruby-upb.h +3244 -3180
- data/lib/google/protobuf/descriptor_pb.rb +1 -1
- data/lib/google/protobuf/ffi/ffi.rb +5 -0
- data/lib/google/protobuf/ffi/message.rb +6 -2
- metadata +3 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 84554f042e358709df53e774b914ec550ee2a34ebd4f54655a95cb354328690c
|
4
|
+
data.tar.gz: 533fc36a990eccea7ba8d50eee58c92c89ebfdd3c15343a05b0fd15066391712
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: dd855f18f3a68cfa35f4482f8492ba089e579589e09056d22e4d577dc3ebbcef8ede9e61eafc2ba6fdfa2eb344ed6daa1e7ff95b05b3349fd87d375638c982c1
|
7
|
+
data.tar.gz: 984bce8c9d6e74aa1302143ef8fcb5a28331f6a4531bc8c0659019ccec7e876a6b9f8f2b871338cb2b6391cf0a34a7748096c27e95afabdbc9bb1a30e63bcff5
|
@@ -1038,11 +1038,21 @@ static VALUE Message_decode_json(int argc, VALUE* argv, VALUE klass) {
|
|
1038
1038
|
|
1039
1039
|
upb_Status_Clear(&status);
|
1040
1040
|
const upb_DefPool* pool = upb_FileDef_Pool(upb_MessageDef_File(msg->msgdef));
|
1041
|
-
|
1042
|
-
|
1043
|
-
|
1044
|
-
|
1045
|
-
|
1041
|
+
|
1042
|
+
int result = upb_JsonDecodeDetectingNonconformance(
|
1043
|
+
RSTRING_PTR(data), RSTRING_LEN(data), (upb_Message*)msg->msg,
|
1044
|
+
msg->msgdef, pool, options, Arena_get(msg->arena), &status);
|
1045
|
+
|
1046
|
+
switch (result) {
|
1047
|
+
case kUpb_JsonDecodeResult_Ok:
|
1048
|
+
break;
|
1049
|
+
case kUpb_JsonDecodeResult_OkWithEmptyStringNumerics:
|
1050
|
+
rb_warn("%s", upb_Status_ErrorMessage(&status));
|
1051
|
+
break;
|
1052
|
+
case kUpb_JsonDecodeResult_Error:
|
1053
|
+
rb_raise(cParseError, "Error occurred during parsing: %s",
|
1054
|
+
upb_Status_ErrorMessage(&status));
|
1055
|
+
break;
|
1046
1056
|
}
|
1047
1057
|
|
1048
1058
|
return msg_rb;
|