fix OER comparison API

This commit is contained in:
Lev Walkin 2017-10-21 01:09:13 -07:00
parent 836686167d
commit 3c37385d29
2 changed files with 5 additions and 1 deletions

View File

@ -432,7 +432,7 @@ SEQUENCE_encode_oer(const asn_TYPE_descriptor_t *td,
const void *memb_ptr = element_ptr(sptr, elm);
uint32_t has_component = memb_ptr != NULL;
if(has_component && elm->default_value_cmp
&& elm->default_value_cmp(&memb_ptr) == 0) {
&& elm->default_value_cmp(memb_ptr) == 0) {
has_component = 0;
}
ret = asn_put_few_bits(&preamble, has_component, 1);

View File

@ -73,3 +73,7 @@ SEQUENCE { ..., one BOOLEAN, two BIT STRING (SIZE(1..3)) }
SEQUENCE { ..., null NULL, ..., one BOOLEAN, two BIT STRING (SIZE(1..3)) }
SEQUENCE { ..., one NULL, two BOOLEAN, three BIT STRING (SIZE(1..3)) }
SEQUENCE { ..., null NULL, ..., one [1] NULL, two BOOLEAN, three BIT STRING (SIZE(1..3)) }
SEQUENCE { one BOOLEAN OPTIONAL, two PrintableString (SIZE(1)), three VisibleString (SIZE(1)) DEFAULT "Z" }
SEQUENCE { one [1] BOOLEAN OPTIONAL, two [2] BOOLEAN, three [3] BOOLEAN DEFAULT TRUE, four PrintableString (SIZE(1)), five VisibleString (SIZE(1)) DEFAULT "Z" }