aboutsummaryrefslogtreecommitdiffstats
path: root/channels
diff options
context:
space:
mode:
authortilghman <tilghman@f38db490-d61c-443f-a65b-d21fe96a405b>2008-10-28 21:39:35 +0000
committertilghman <tilghman@f38db490-d61c-443f-a65b-d21fe96a405b>2008-10-28 21:39:35 +0000
commit97f887edc6a5fd89858425319cae0abdca8e7421 (patch)
tree8d4637581b119aa7233248f67e56634b4d11cedc /channels
parentf575aad709322042bdffdcad2c2e4fadaa91983f (diff)
Merged revisions 152442 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk ........ r152442 | tilghman | 2008-10-28 16:38:26 -0500 (Tue, 28 Oct 2008) | 7 lines Only re-add the io port if it was closed, otherwise reload causes a memory leak. (closes issue #13785) Reported by: eliel Patches: chan_mgcp.c.patch uploaded by eliel (license 64) ........ git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.6.0@152443 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'channels')
-rw-r--r--channels/chan_mgcp.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/channels/chan_mgcp.c b/channels/chan_mgcp.c
index 1eca7168a..887fdcfd0 100644
--- a/channels/chan_mgcp.c
+++ b/channels/chan_mgcp.c
@@ -3427,8 +3427,9 @@ static void *do_monitor(void *data)
ast_verb(1, "Reloading MGCP\n");
reload_config(1);
/* Add an I/O event to our UDP socket */
- if (mgcpsock > -1)
+ if (mgcpsock > -1 && !mgcpsock_read_id) {
mgcpsock_read_id = ast_io_add(io, mgcpsock, mgcpsock_read, AST_IO_IN, NULL);
+ }
}
/* Check for interfaces needing to be killed */