pthread + malloc = зависание
Есть довольно запутанная программа, у которой директивами условной компиляции (#ifdef..#endif) включается поддержка тредов. Если она включена и я вставляю free (malloc (1)); в любое место до использования MUTEX`ов, то она зависает (gdb показывает на функцию pthread_mutex_lock). Если такую строчку не вставлять или отключить поддержку тредов, то всё отлично. Как данная строка может влиять на состояние MUTEX`ов?