Index: /trunk/include/iprt/asn1-generator-pass.h
===================================================================
--- /trunk/include/iprt/asn1-generator-pass.h	(revision 64894)
+++ /trunk/include/iprt/asn1-generator-pass.h	(revision 64895)
@@ -738,4 +738,5 @@
     RTASN1TMPL_BEGIN_COMMON(); \
     RTAsn1Dummy_InitEx(&pThis->Dummy); \
+    pThis->Dummy.Asn1Core.pOps = &RT_CONCAT3(g_,RTASN1TMPL_INT_NAME,_Vtable); \
     RTAsn1MemInitAllocation(&pThis->Allocation, pAllocator); \
     int rc; \
@@ -865,4 +866,5 @@
     RT_CONCAT(RTASN1TMPL_EXT_NAME,_Delete)(pThis); /* See _Init. */ \
     RTAsn1Dummy_InitEx(&pThis->Dummy); \
+    pThis->Dummy.Asn1Core.pOps = &RT_CONCAT3(g_,RTASN1TMPL_INT_NAME,_Vtable); \
     RTAsn1MemInitAllocation(&pThis->Allocation, pAllocator); \
     pThis->enmChoice = a_enmChoice; \
@@ -888,4 +890,5 @@
     RT_CONCAT(RTASN1TMPL_EXT_NAME,_Delete)(pThis); /* See _Init. */ \
     RTAsn1Dummy_InitEx(&pThis->Dummy); \
+    pThis->Dummy.Asn1Core.pOps = &RT_CONCAT3(g_,RTASN1TMPL_INT_NAME,_Vtable); \
     RTAsn1MemInitAllocation(&pThis->Allocation, pAllocator); \
     pThis->enmChoice = a_enmChoice; \
@@ -992,4 +995,6 @@
             if (RT_SUCCESS(rc)) \
             { \
+                pThis->cItems = cItems + 1; \
+                \
                 /* If not inserting at the end of the array, shift existing items out of the way and insert the new as req. */ \
                 if (iPosition != cItems) \
