aboutsummaryrefslogtreecommitdiffstats
path: root/res/res_timing_dahdi.c
diff options
context:
space:
mode:
authoreliel <eliel@f38db490-d61c-443f-a65b-d21fe96a405b>2009-05-31 01:22:15 +0000
committereliel <eliel@f38db490-d61c-443f-a65b-d21fe96a405b>2009-05-31 01:22:15 +0000
commit6c205ae87ec07db93b8ea155d77cc2929492af01 (patch)
treee0a8f123450e50c410fd0e4a730c9da2c1568d4d /res/res_timing_dahdi.c
parent980e2bbd537e88a9e5fc9b86da299de3acfefc8f (diff)
Avoid a crash when res_timing_dahdi is unloaded but wasn't properly loaded.
if dahdi_test_timer() fails, timing_funcs_handle remains NULL causing a crash when calling ast_unregister_timing_interface() with a NULL pointer. (closes issue #15234) Reported by: eliel Patches: timing_dahdi1.diff uploaded by eliel (license 64) git-svn-id: http://svn.digium.com/svn/asterisk/trunk@198437 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'res/res_timing_dahdi.c')
-rw-r--r--res/res_timing_dahdi.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/res/res_timing_dahdi.c b/res/res_timing_dahdi.c
index bc65bbdcf..ae95cf9cd 100644
--- a/res/res_timing_dahdi.c
+++ b/res/res_timing_dahdi.c
@@ -192,7 +192,11 @@ static int load_module(void)
static int unload_module(void)
{
- return ast_unregister_timing_interface(timing_funcs_handle);
+ if (timing_funcs_handle) {
+ return ast_unregister_timing_interface(timing_funcs_handle);
+ }
+
+ return 0;
}
AST_MODULE_INFO_STANDARD(ASTERISK_GPL_KEY, "DAHDI Timing Interface");