From 56ab55449e38de8b28df5e2b7e3e6bbebfecd1ba Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B6rn=20Gustavsson?= Date: Thu, 15 May 2014 15:24:04 +0200 Subject: 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. --- lib/asn1/src/asn1ct_check.erl | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) (limited to 'lib') 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), -- cgit v1.2.3