Грабли channel.c:910 ast_channel_free: Channel 'OOH323/' may not have been hung up properly
Наткнулся на такие грабли.
* выпадал в core.
Схема:
SIP абонент -> OOH323
SIP абонент делает трансфер звонка на OOH323
Смотрим в логи:
Apr 20 02:21:18 WARNING[20091]: channel.c:910 ast_channel_free: Channel 'OOH323/ip-301d' may not have been hung up properly
Далее, судя по ходу кода channels.c :wacko: :
if (chan->tech_pvt) {
ast_log(LOG_WARNING, "Channel '%s' may not have been hung up properly\n", chan->name);
free(chan->tech_pvt);
}
Вот функция free(chan->tech_pvt) вызывала asterisk in free(): error: chunk is already free и астериск валился в core так как при попытке освобождения канала он уже был свободен.
Комментим free(chan->tech_pvt); и всё продолжает нормально работать.
ОС: FreeBSD 5.4 - Release
*ver: asterisk-1.2.7.1-netsec
OOH323_ver: 0.4 (то что из аддонов 1.2.2)
Вот такие грабли...
|