Здравствуйте, ooh323c-devel.
I have found where it is crushes.
in ooh323 module is an empty ooh323_fixup function.
but here is the place for fixing a call infomation when transfer occurs.
here is my code. may be some one will find it useable.
static int ooh323_fixup(struct ast_channel *oldchan, struct ast_channel *newchan)
{
struct ooh323_pvt *p = newchan->tech_pvt;
ast_mutex_lock(&p->lock);
if (p->owner != oldchan) {
ast_log(LOG_WARNING, "Old channel wasn't %p but was %p\n", oldchan, p->owner);
ast_mutex_unlock(&p->lock);
return -1;
}
if (p->owner == oldchan)
p->owner = newchan;
else
p->owner = oldchan;
ast_mutex_unlock(&p->lock);
if(gH323Debug)
ast_verbose("ooh323c ooh323_fixup \n");
return 0;
}
--
С уважением,
Flagman mailto:[EMAIL PROTECTED]
Здравствуйте, ooh323c-devel.
The problem seen when you transfer a call.
In my situation i transfer incoming ooh323 call between SIP and IAX clients.
After hangup on any side, asterisk dies with segmentation fault in few seconds.
Try to play with call transfer on ooh323 and SIP or IAX channels and you will hit this bug.
After addind more debug verbose tests and chekpoints i found that ooh323 loses original channel owner and owner replaced with SIP exten, from which call transfer have been maded. Don`t know how to fix this, but asterisk dies on ooh323 try to free an already released (after transfer) my (SIP!!!) channel.
Will be there some fixes for this?
--
С уважением,
Flagman mailto:[EMAIL PROTECTED]
------------------------------------------------------------------------- Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT & business topics through brief surveys -- and earn cash http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________ ooh323c-devel mailing list ooh323c-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/ooh323c-devel