Hello, this question relates to issue ASTERISK-28197 <https://issues.asterisk.org/jira/browse/ASTERISK-28197>
In case of Bridge application when bridge_exec from features.c is invoked it calls the ast_channel_unref(current_dest_chan) to remove the channel reference if channel is not in the Bridge, which gives the following function call stack. #0 topic_remove_subscription (topic=0x7fbf2c008290, sub=0x36095a0) at stasis.c:711 #1 0x00000000005c8a22 in stasis_forward_cancel (forward=0x7fbf2c009fa8) at stasis.c:925 #2 0x00000000004cd126 in ast_channel_internal_cleanup (chan=0x7fbf2c0243d0) at channel_internal_api.c:1553 #3 0x00000000004af818 in ast_channel_destructor (obj=0x7fbf2c0243d0) at channel.c:2363 #4 0x000000000045b94b in internal_ao2_ref (user_data=0x7fbf2c0243d0, delta=-1, file=0x61cb0b “astobj2.c”, line=518, func=0x61cd21 <_ *FUNCTION* *.8693> "* _ao2_ref") at astobj2.c:451 #5 0x000000000045bc2e in __ao2_ref (user_data=0x7fbf2c0243d0, delta=-1) at astobj2.c:518 #6 0x000000000050c26a in bridge_exec (chan=0x7fbf2c00a4d0, data=0x7fbfb3ffc460 “SIP/201-00000000”) at features.c:1129 finally the call to stasis_forward_cancel causes the removal of 4 subscribers from the non-pbx channel’s topic and one of those 4 subscribers carries the callback endpoint_cache_clear which is needed to remove channel_ids from struct ast_endpoint. I tried to stop the removal of subscribers from the non-pbx channel by adding a flag in ast_channel which stopped the channel_ids count from increasing forever but now the subscribers are not getting removed from the channel. can anyone suggest how to solve this so that subscribers with callback endpoint_cache_clear don't get removed while bridging but also get removed while channel cleanup happens.
-- _____________________________________________________________________ -- Bandwidth and Colocation Provided by http://www.api-digital.com -- asterisk-dev mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-dev