diff --git a/loader.c b/loader.c index e6ff19fee5f64cdb22f7d4979cf841bf9f614954..7451fd46643a91ca4384fbcb9b25a2415df68b5b 100755 --- a/loader.c +++ b/loader.c @@ -280,11 +280,11 @@ int ast_load_resource(char *resource_name) m->reload = dlsym(m->lib, "reload"); if (m->reload == NULL) m->reload = dlsym(m->lib, "_reload"); - if (m->key && !(key = m->key())) { + if (!m->key || !(key = m->key())) { ast_log(LOG_WARNING, "Key routine returned NULL in module %s\n", fn); - errors++; - } else key = NULL; + errors++; + } if (key && verify_key(key)) { ast_log(LOG_WARNING, "Unexpected key returned by module %s\n", fn); errors++;