p1 = malloc(...);
p2 = malloc(...);
free(p1);
free(p2);
В программе утечек памяти нет. Все вызовы malloc-free комплементарны (проверено переопределением malloc-free)
что free не применяется дважды к одной и той же области памяти , realloc проверен на предмет применения
к левым областям памяти - всё нормально.

но некоторые из завершающих free выдают ошибку разрушения кучи (heap). Что может быть не так???
