{ int i = 0; while (result[i]) { if(i+1>items){ EXTEND(sp,1); } ST(argvi+i) = sv_newmortal(); sv_setpv((SV *)ST(argvi+i),result[i]);  Abort is happening this point delete [] result[i]; i++; } argvi+=i; delete [] result; } #### FAULTING_THREAD: 0000000000000c5c DEFAULT_BUCKET_ID: HEAP_CORRUPTION PRIMARY_PROBLEM_CLASS: HEAP_CORRUPTION BUGCHECK_STR: APPLICATION_FAULT_HEAP_CORRUPTION_NULL_CLASS_PTR_DEREFERENCE_INVALID_POINTER_READ_WRONG_SYMBOLS_FILL_PATTERN_ffffffff LAST_CONTROL_TRANSFER: from 00007ffb262d21b2 to 00007ffb262d23c3 STACK_TEXT: 00000000`001bee80 00007ffb`262d21b2 : 00000000`02000002 00007ffb`00000000 00000000`000000a8 00000000`00000000 : ntdll!RtlAllocateHeap+0x2f3 00000000`001bef30 00007ffb`25f01d36 : 00000000`00000001 00000000`00000002 00000000`000000a8 00000000`00000000 : ntdll!RtlAllocateHeap+0xe2 00000000`001bf040 00000000`5825996d : 00000000`00000090 00000000`007a5df8 00000000`00000001 00000000`585125f0 : msvcrt!malloc+0x56 00000000`001bf070 00000000`58262a9a : 00000000`00000002 00000000`5848def1 00000000`00000000 00000000`000000c5 : perl516!VMem::Malloc+0x1d [e:\codavs05\hpsw-opcsi\external\perl\5.16.0\win5.2_64\perl-5.16.0\win32\vmem.h @ 166] 00000000`001bf0a0 00000000`5829bee5 : 00000000`022c2630 00000000`00000090 00000000`007a5df8 00000000`01dd44f0 : perl516!Perl_safesysmalloc+0x4a [e:\codavs05\hpsw-opcsi\external\perl\5.16.0\win5.2_64\perl-5.16.0\util.c @ 102] 00000000`001bf0d0 00000000`5828e521 : 00000000`022c2630 00000000`007a5df8 00000000`00000003 00000000`00000000 : perl516!Perl_sv_grow+0x135 [e:\codavs05\hpsw-opcsi\external\perl\5.16.0\win5.2_64\perl-5.16.0\sv.c @ 1521] 00000000`001bf100 00007ffb`1d87cf03 : 00000000`007a5df8 00000000`00000003 00000000`022c5dc8 00000000`00000000 : perl516!Perl_sv_setpv+0xb1 [e:\codavs05\hpsw-opcsi\external\perl\5.16.0\win5.2_64\perl-5.16.0\sv.c @ 4550]