more distinction
git-svn-id: https://asn1c.svn.sourceforge.net/svnroot/asn1c/trunk@1073 59561ff5-6e30-0410-9f3c-9617f08c8826
diff --git a/libasn1parser/asn1p_class.c b/libasn1parser/asn1p_class.c
index 741d98e..c9065f6 100644
--- a/libasn1parser/asn1p_class.c
+++ b/libasn1parser/asn1p_class.c
@@ -19,7 +19,9 @@
asn1p_wsyntx_chunk_free(asn1p_wsyntx_chunk_t *wc) {
if(wc) {
switch(wc->type) {
- case WC_LITERAL: free(wc->content.token); break;
+ case WC_LITERAL:
+ case WC_WHITESPACE:
+ free(wc->content.token); break;
case WC_REFERENCE: asn1p_ref_free(wc->content.ref); break;
case WC_OPTIONALGROUP:
asn1p_wsyntx_free(wc->content.syntax);
@@ -35,8 +37,10 @@
nc = asn1p_wsyntx_chunk_new();
if(nc) {
+ nc->type = wc->type;
switch(wc->type) {
case WC_LITERAL:
+ case WC_WHITESPACE:
nc->content.token = malloc(strlen(wc->content.token)+1);
strcpy(nc->content.token, wc->content.token);
break;