Summary: | ASTERISK-05638: [patch] memory leak in channel.c | ||
Reporter: | Dmytro Mishchenko (arkadia) | Labels: | |
Date Opened: | 2005-11-18 11:09:35.000-0600 | Date Closed: | 2008-01-15 16:03:18.000-0600 |
Priority: | Minor | Regression? | No |
Status: | Closed/Complete | Components: | Core/General |
Versions: | Frequency of Occurrence | ||
Related Issues: | |||
Environment: | Attachments: | ( 0) 20051118__always_destroy_sched_context.diff.txt | |
Description: | At ast_channel_alloc() sched_context_create() allocates memory for one of channel fields. But sched_context_destroy() called from ast_hangup() only, which is not always being called. E.g. When using pbx_substitute_variables_helper() with temporary channel for variables substitution. I expect sched_context_destroy() being called inside ast_channel_free(). If you think its a right decision I'll post a patch. | ||
Comments: | By: Tilghman Lesher (tilghman) 2005-11-18 15:09:49.000-0600 Good catch. By: Dmytro Mishchenko (arkadia) 2005-11-21 07:57:40.000-0600 why do we need this code in ast_hangup(): if (chan->sched) sched_context_destroy(chan->sched); Why not to do the same later at ast_channel_free()? By: Kevin P. Fleming (kpfleming) 2005-12-01 17:35:23.000-0600 Committed to branch 1.2, will auto-merge to trunk. Thanks! By: Digium Subversion (svnbot) 2008-01-15 16:03:04.000-0600 Repository: asterisk Revision: 7268 U branches/1.2/channel.c ------------------------------------------------------------------------ r7268 | kpfleming | 2008-01-15 16:03:03 -0600 (Tue, 15 Jan 2008) | 2 lines ensure channel's scheduling context is freed (issue ASTERISK-5638) ------------------------------------------------------------------------ http://svn.digium.com/view/asterisk?view=rev&revision=7268 By: Digium Subversion (svnbot) 2008-01-15 16:03:11.000-0600 Repository: asterisk Revision: 7276 _U trunk/ U trunk/Makefile U trunk/UPGRADE.txt U trunk/apps/app_festival.c U trunk/apps/app_page.c U trunk/apps/app_voicemail.c U trunk/channel.c U trunk/channels/chan_agent.c U trunk/channels/chan_local.c U trunk/channels/chan_sip.c U trunk/configs/voicemail.conf.sample U trunk/doc/README.misdn D trunk/patches/ U trunk/pbx.c ------------------------------------------------------------------------ r7276 | kpfleming | 2008-01-15 16:03:10 -0600 (Tue, 15 Jan 2008) | 57 lines Merged revisions 7265-7266,7268-7275 via svnmerge from https://origsvn.digium.com/svn/asterisk/branches/1.2 ........ r7265 | oej | 2005-12-01 17:18:14 -0600 (Thu, 01 Dec 2005) | 2 lines Changing bug report address to the Asterisk issue tracker ........ r7266 | kpfleming | 2005-12-01 17:18:29 -0600 (Thu, 01 Dec 2005) | 3 lines Makefile 'update' target now supports updating from Subversion repositories (issue ASTERISK-5722) remove support for 'patches' subdirectory, it's no longer useful ........ r7268 | kpfleming | 2005-12-01 17:34:58 -0600 (Thu, 01 Dec 2005) | 2 lines ensure channel's scheduling context is freed (issue ASTERISK-5638) ........ r7269 | kpfleming | 2005-12-01 17:49:44 -0600 (Thu, 01 Dec 2005) | 2 lines don't block waiting for the Festival server forever when it goes away (issue ASTERISK-5729) ........ r7270 | kpfleming | 2005-12-01 18:26:12 -0600 (Thu, 01 Dec 2005) | 2 lines allow variables to exist on both 'halves' of the Local channel (issue ASTERISK-5659) ........ r7271 | kpfleming | 2005-12-01 18:28:48 -0600 (Thu, 01 Dec 2005) | 2 lines protect agent_bridgedchannel() from segfaulting when there is no bridged channel (issue ASTERISK-5726) ........ r7272 | kpfleming | 2005-12-01 18:39:00 -0600 (Thu, 01 Dec 2005) | 3 lines properly handle password changes when mailbox is last line of config file and not followed by a newline (issue ASTERISK-5717) reformat password changing code to conform to coding guidelines (issue ASTERISK-5717) ........ r7273 | kpfleming | 2005-12-01 18:42:40 -0600 (Thu, 01 Dec 2005) | 2 lines allow previous context-searching behavior to be used if desired (issue ASTERISK-5745) ........ r7274 | kpfleming | 2005-12-01 18:51:15 -0600 (Thu, 01 Dec 2005) | 2 lines inherit channel variables into channels created by Page() application (issue ASTERISK-5736) ........ r7275 | oej | 2005-12-01 18:52:13 -0600 (Thu, 01 Dec 2005) | 2 lines Bug ASTERISK-5753. Improve SIP INFO DTMF debugging output. (1.2 & Trunk) ........ ------------------------------------------------------------------------ http://svn.digium.com/view/asterisk?view=rev&revision=7276 By: Digium Subversion (svnbot) 2008-01-15 16:03:18.000-0600 Repository: asterisk Revision: 7284 _U team/kpfleming/test-for-merging/ U team/kpfleming/test-for-merging/Makefile U team/kpfleming/test-for-merging/UPGRADE.txt U team/kpfleming/test-for-merging/apps/app_festival.c U team/kpfleming/test-for-merging/apps/app_page.c U team/kpfleming/test-for-merging/apps/app_voicemail.c U team/kpfleming/test-for-merging/build_tools/make_svn_branch_name U team/kpfleming/test-for-merging/channel.c U team/kpfleming/test-for-merging/channels/chan_agent.c U team/kpfleming/test-for-merging/channels/chan_local.c U team/kpfleming/test-for-merging/channels/chan_sip.c U team/kpfleming/test-for-merging/configs/voicemail.conf.sample U team/kpfleming/test-for-merging/doc/README.jitterbuffer U team/kpfleming/test-for-merging/doc/README.misdn U team/kpfleming/test-for-merging/doc/README.realtime D team/kpfleming/test-for-merging/patches/ U team/kpfleming/test-for-merging/pbx.c ------------------------------------------------------------------------ r7284 | kpfleming | 2008-01-15 16:03:17 -0600 (Tue, 15 Jan 2008) | 72 lines Merged revisions 7257,7261,7263,7265-7266,7268-7275 via svnmerge from https://origsvn.digium.com/svn/asterisk/branches/1.2 ........ r7257 | kpfleming | 2005-12-01 13:25:06 -0600 (Thu, 01 Dec 2005) | 2 lines ensure that 'svn info' output is in the expected language for the script to parse (issue ASTERISK-5727) ........ r7261 | oej | 2005-12-01 15:38:38 -0600 (Thu, 01 Dec 2005) | 2 lines Fixing some spelling errors, as well as changing "cvs" to "subversion" in misdn documentation. ........ r7263 | oej | 2005-12-01 16:21:13 -0600 (Thu, 01 Dec 2005) | 2 lines Removing references to 1.1dev, replacing with 1.2, in documentation files. ........ r7265 | oej | 2005-12-01 17:18:14 -0600 (Thu, 01 Dec 2005) | 2 lines Changing bug report address to the Asterisk issue tracker ........ r7266 | kpfleming | 2005-12-01 17:18:29 -0600 (Thu, 01 Dec 2005) | 3 lines Makefile 'update' target now supports updating from Subversion repositories (issue ASTERISK-5722) remove support for 'patches' subdirectory, it's no longer useful ........ r7268 | kpfleming | 2005-12-01 17:34:58 -0600 (Thu, 01 Dec 2005) | 2 lines ensure channel's scheduling context is freed (issue ASTERISK-5638) ........ r7269 | kpfleming | 2005-12-01 17:49:44 -0600 (Thu, 01 Dec 2005) | 2 lines don't block waiting for the Festival server forever when it goes away (issue ASTERISK-5729) ........ r7270 | kpfleming | 2005-12-01 18:26:12 -0600 (Thu, 01 Dec 2005) | 2 lines allow variables to exist on both 'halves' of the Local channel (issue ASTERISK-5659) ........ r7271 | kpfleming | 2005-12-01 18:28:48 -0600 (Thu, 01 Dec 2005) | 2 lines protect agent_bridgedchannel() from segfaulting when there is no bridged channel (issue ASTERISK-5726) ........ r7272 | kpfleming | 2005-12-01 18:39:00 -0600 (Thu, 01 Dec 2005) | 3 lines properly handle password changes when mailbox is last line of config file and not followed by a newline (issue ASTERISK-5717) reformat password changing code to conform to coding guidelines (issue ASTERISK-5717) ........ r7273 | kpfleming | 2005-12-01 18:42:40 -0600 (Thu, 01 Dec 2005) | 2 lines allow previous context-searching behavior to be used if desired (issue ASTERISK-5745) ........ r7274 | kpfleming | 2005-12-01 18:51:15 -0600 (Thu, 01 Dec 2005) | 2 lines inherit channel variables into channels created by Page() application (issue ASTERISK-5736) ........ r7275 | oej | 2005-12-01 18:52:13 -0600 (Thu, 01 Dec 2005) | 2 lines Bug ASTERISK-5753. Improve SIP INFO DTMF debugging output. (1.2 & Trunk) ........ ------------------------------------------------------------------------ http://svn.digium.com/view/asterisk?view=rev&revision=7284 |