diff options
author | Björn Gustavsson <[email protected]> | 2014-05-15 15:24:04 +0200 |
---|---|---|
committer | Björn Gustavsson <[email protected]> | 2015-01-12 11:40:24 +0100 |
commit | 56ab55449e38de8b28df5e2b7e3e6bbebfecd1ba (patch) | |
tree | 5dd44bafddb815cab2a2c37defabeb9aafe211ed /lib/asn1/src/asn1ct_check.erl | |
parent | b92e491aa5bfbaefb0f938bbb245a580837cb8c8 (diff) | |
download | otp-56ab55449e38de8b28df5e2b7e3e6bbebfecd1ba.tar.gz otp-56ab55449e38de8b28df5e2b7e3e6bbebfecd1ba.tar.bz2 otp-56ab55449e38de8b28df5e2b7e3e6bbebfecd1ba.zip |
Use object_to_check/1 in two forgotten places
An #'Externavaluereference'{} may either be a value or an object.
In places where objects are expected, we will need to call
object_to_check/1 to convert an #'Externavaluereference'{} to an
object. It was forgotten in two places.
Diffstat (limited to 'lib/asn1/src/asn1ct_check.erl')
-rw-r--r-- | lib/asn1/src/asn1ct_check.erl | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/lib/asn1/src/asn1ct_check.erl b/lib/asn1/src/asn1ct_check.erl index fc15cfbb88..79d55feb9f 100644 --- a/lib/asn1/src/asn1ct_check.erl +++ b/lib/asn1/src/asn1ct_check.erl @@ -794,7 +794,7 @@ check_object(S,_ObjDef,#'Object'{classname=ClassRef,def=ObjectDef}) -> instantiate_po(S,ClassDef,Object,ArgList); #'Externalvaluereference'{} -> {_,Object} = get_referenced_type(S,ObjectDef), - check_object(S,Object,Object#typedef.typespec); + check_object(S, Object, object_to_check(Object)); [] -> %% An object with no fields. All class fields must be %% optional or default. Check that all fields in @@ -835,8 +835,7 @@ check_object(S, {'SingleValue',ERef = #'Externalvaluereference'{}} -> {RefedMod,ObjDef} = get_referenced_type(S,ERef), #'Object'{def=CheckedObj} = - check_object(S,ObjDef,ObjDef#typedef.typespec), - + check_object(S, ObjDef, object_to_check(ObjDef)), NewSet = get_unique_valuelist(S,[{{RefedMod,get_datastr_name(ObjDef)}, CheckedObj}], UniqueInfo), |