Index: /trunk/include/iprt/asn1-generator-pass.h
===================================================================
--- /trunk/include/iprt/asn1-generator-pass.h	(revision 51918)
+++ /trunk/include/iprt/asn1-generator-pass.h	(revision 51919)
@@ -1074,5 +1074,9 @@
         default: break
 # define RTASN1TMPL_MEMBER_DYN_COMMON(a_UnionNm, a_PtrName, a_Type, a_Api, a_Allocation, a_enmMembNm, a_enmValue, a_IfStmt) \
-        case a_enmValue: RT_CONCAT(a_Api,_Delete)(pThis->a_UnionNm.a_PtrName); break
+        case a_enmValue: \
+            RT_CONCAT(a_Api,_Delete)(pThis->a_UnionNm.a_PtrName); \
+            RTAsn1MemFree(&pThis->Allocation, pThis->a_UnionNm.a_PtrName); \
+            pThis->a_UnionNm.a_PtrName = NULL; \
+            break
 # define RTASN1TMPL_MEMBER_DYN_END(a_enmType, a_enmMembNm, a_Allocation) \
     }
