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;