You need to allocate one character more than the length of your string for storing the last '\0' character.
arrayOfCharPtr[0] = new char[someText.length()+1];
In your case the strcpy will write the last '\0' after the allocated bloc and it corrupts the heap.
Tools like valgrind can help to understand. valgrind produces the error message
==16970== Invalid write of size 1
==16970== at 0x4C3106F: strcpy (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==16970== by 0x400C47: main
==16970== Address 0x5ab5cfb is 0 bytes after a block of size 11 alloc'd
==16970== at 0x4C2E80F: operator new[](unsigned long) (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==16970== by 0x400C1C: main
which localizes the source of the error.