[asterisk-commits] mjordan: trunk r361561 - in /trunk: ./ apps/app_meetme.c
SVN commits to the Asterisk project
asterisk-commits at lists.digium.com
Fri Apr 6 15:32:55 CDT 2012
Author: mjordan
Date: Fri Apr 6 15:32:52 2012
New Revision: 361561
URL: http://svnview.digium.com/svn/asterisk?view=rev&rev=361561
Log:
Fix memory leak when using MeetMeAdmin 'e' option with user specified
A memory leak/reference counting leak occurs if the MeetMeAdmin 'e' command
(eject last user that joined) is used in conjunction with a specified user.
Regardless of the command being executed, if a user is specified for the
command, MeetMeAdmin will look up that user. Because the 'e' option kicks
the last user that joined, as opposed to the one specified, the reference to
the user specified by the command would be leaked when the user variable
was assigned to the last user that joined.
........
Merged revisions 361558 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 361560 from http://svn.asterisk.org/svn/asterisk/branches/10
Modified:
trunk/ (props changed)
trunk/apps/app_meetme.c
Propchange: trunk/
------------------------------------------------------------------------------
Binary property 'branch-10-merged' - no diff available.
Modified: trunk/apps/app_meetme.c
URL: http://svnview.digium.com/svn/asterisk/trunk/apps/app_meetme.c?view=diff&rev=361561&r1=361560&r2=361561
==============================================================================
--- trunk/apps/app_meetme.c (original)
+++ trunk/apps/app_meetme.c Fri Apr 6 15:32:52 2012
@@ -4701,6 +4701,12 @@
case 101: /* e: Eject last user*/
{
int max_no = 0;
+
+ /* If they passed in a user, disregard it */
+ if (user) {
+ ao2_ref(user, -1);
+ }
+
ao2_callback(cnf->usercontainer, OBJ_NODATA, user_max_cmp, &max_no);
user = ao2_find(cnf->usercontainer, &max_no, 0);
if (!ast_test_flag64(&user->userflags, CONFFLAG_ADMIN))
More information about the asterisk-commits
mailing list