summaryrefslogtreecommitdiff
path: root/egg
diff options
context:
space:
mode:
authorStef Walter <stefw@collabora.co.uk>2010-12-22 15:56:36 +0000
committerStef Walter <stefw@collabora.co.uk>2010-12-22 15:56:36 +0000
commit962e450cba176d1d4245aa9672e25ffe39372d87 (patch)
tree24b2b6fc7073ecdb287f89fba11fa18830d08e91 /egg
parent4ae95e2d8643e7c2033e620d7ad9277d2bed2d4c (diff)
downloadgnome-keyring-962e450cba176d1d4245aa9672e25ffe39372d87.tar.gz
[egg] Don't try to encode optional sequences if empty.
Diffstat (limited to 'egg')
-rw-r--r--egg/egg-asn1x.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/egg/egg-asn1x.c b/egg/egg-asn1x.c
index ba0a398f..122cedfd 100644
--- a/egg/egg-asn1x.c
+++ b/egg/egg-asn1x.c
@@ -1617,6 +1617,8 @@ anode_encode_prepare_structured (GNode *node, gboolean want)
if (type == TYPE_SEQUENCE_OF || type == TYPE_SET_OF)
child_want = FALSE;
+ if (anode_def_flags (node) & FLAG_OPTION)
+ want = FALSE;
for (child = node->children; child; child = child->next) {
if (anode_encode_prepare (child, child_want)) {