Same problem in deleteListContents(). It seems like, if I just want a temporary pointer for manipulation, I shouldn't use new. As the memory can't be freed appropriately (You'd delete the object it points to in the process of freeing the memory, BEFORE you want to delete it).