[asterisk-commits] qwell: branch 1.4 r81523 - /branches/1.4/channels/chan_phone.c
SVN commits to the Asterisk project
asterisk-commits at lists.digium.com
Wed Sep 5 10:14:30 CDT 2007
Author: qwell
Date: Wed Sep 5 10:14:30 2007
New Revision: 81523
URL: http://svn.digium.com/view/asterisk?view=rev&rev=81523
Log:
Do not try to unregister a NULL channel tech.
Also changed load_module function to use defines rather than numbers for return values.
Issue 10651, patch by rbraun_proformatique, with additions by me.
Modified:
branches/1.4/channels/chan_phone.c
Modified: branches/1.4/channels/chan_phone.c
URL: http://svn.digium.com/view/asterisk/branches/1.4/channels/chan_phone.c?view=diff&rev=81523&r1=81522&r2=81523
==============================================================================
--- branches/1.4/channels/chan_phone.c (original)
+++ branches/1.4/channels/chan_phone.c Wed Sep 5 10:14:30 2007
@@ -1261,7 +1261,8 @@
{
struct phone_pvt *p, *pl;
/* First, take us out of the channel loop */
- ast_channel_unregister(cur_tech);
+ if (cur_tech)
+ ast_channel_unregister(cur_tech);
if (!ast_mutex_lock(&iflock)) {
/* Hangup all interfaces if they have an owner */
p = iflist;
@@ -1334,7 +1335,7 @@
if (ast_mutex_lock(&iflock)) {
/* It's a little silly to lock it, but we mind as well just to be sure */
ast_log(LOG_ERROR, "Unable to lock interface list???\n");
- return -1;
+ return AST_MODULE_LOAD_FAILURE;
}
v = ast_variable_browse(cfg, "interfaces");
while(v) {
@@ -1350,7 +1351,7 @@
ast_config_destroy(cfg);
ast_mutex_unlock(&iflock);
__unload_module();
- return -1;
+ return AST_MODULE_LOAD_FAILURE;
}
} else if (!strcasecmp(v->name, "silencesupression")) {
silencesupression = ast_true(v->value);
@@ -1418,12 +1419,12 @@
ast_log(LOG_ERROR, "Unable to register channel class 'Phone'\n");
ast_config_destroy(cfg);
__unload_module();
- return -1;
+ return AST_MODULE_LOAD_FAILURE;
}
ast_config_destroy(cfg);
/* And start the monitor for the first time */
restart_monitor();
- return 0;
+ return AST_MODULE_LOAD_SUCCESS;
}
AST_MODULE_INFO_STANDARD(ASTERISK_GPL_KEY, "Linux Telephony API Support");
More information about the asterisk-commits
mailing list