[Asterisk-code-review] Modules: Fix issues with CLI completion. (asterisk[13])

Jenkins2 asteriskteam at digium.com
Mon Oct 30 17:04:04 CDT 2017


Jenkins2 has submitted this change and it was merged. ( https://gerrit.asterisk.org/6935 )

Change subject: Modules: Fix issues with CLI completion.
......................................................................

Modules: Fix issues with CLI completion.

* Stop using ast_module_helper to check if a module is loaded, use
  ast_module_check instead (app_confbridge and app_meetme).
* Stop ast_module_helper from listing reload classes when needsreload
  was not requested.

ASTERISK-27378

Change-Id: Iaed8c1e4fcbeb242921dbac7929a0fe75ff4b239
---
M apps/app_confbridge.c
M apps/app_meetme.c
M main/loader.c
3 files changed, 11 insertions(+), 20 deletions(-)

Approvals:
  Joshua Colp: Looks good to me, but someone else must approve
  George Joseph: Looks good to me, but someone else must approve
  Sean Bright: Looks good to me, approved
  Jenkins2: Approved for Submit



diff --git a/apps/app_confbridge.c b/apps/app_confbridge.c
index 3ea336a..ae3df72 100644
--- a/apps/app_confbridge.c
+++ b/apps/app_confbridge.c
@@ -2377,21 +2377,12 @@
 		user.tech_args.drop_silence = 1;
 	}
 
-	if (ast_test_flag(&user.u_profile, USER_OPT_JITTERBUFFER)) {
-		char *func_jb;
-		if ((func_jb = ast_module_helper("", "func_jitterbuffer", 0, 0, 0, 0))) {
-			ast_free(func_jb);
-			ast_func_write(chan, "JITTERBUFFER(adaptive)", "default");
-		}
+	if (ast_test_flag(&user.u_profile, USER_OPT_JITTERBUFFER) && ast_module_check("func_jitterbuffer.so")) {
+		ast_func_write(chan, "JITTERBUFFER(adaptive)", "default");
 	}
 
-	if (ast_test_flag(&user.u_profile, USER_OPT_DENOISE)) {
-		char *mod_speex;
-		/* Reduce background noise from each participant */
-		if ((mod_speex = ast_module_helper("", "codec_speex", 0, 0, 0, 0))) {
-			ast_free(mod_speex);
-			ast_func_write(chan, "DENOISE(rx)", "on");
-		}
+	if (ast_test_flag(&user.u_profile, USER_OPT_DENOISE) && ast_module_check("codec_speex.so")) {
+		ast_func_write(chan, "DENOISE(rx)", "on");
 	}
 
 	/* if this user has a intro, play it before entering */
diff --git a/apps/app_meetme.c b/apps/app_meetme.c
index 2cf252d..1d3c324 100644
--- a/apps/app_meetme.c
+++ b/apps/app_meetme.c
@@ -3201,7 +3201,7 @@
 	struct timeval now;
 	struct ast_dsp *dsp = NULL;
 	struct ast_app *agi_app;
-	char *agifile, *mod_speex;
+	char *agifile;
 	const char *agifiledefault = "conf-background.agi", *tmpvar;
 	char meetmesecs[30] = "";
 	char exitcontext[AST_MAX_CONTEXT] = "";
@@ -3591,9 +3591,7 @@
 	}
 
 	/* Reduce background noise from each participant */
-	if (!ast_test_flag64(confflags, CONFFLAG_DONT_DENOISE) &&
-		(mod_speex = ast_module_helper("", "func_speex", 0, 0, 0, 0))) {
-		ast_free(mod_speex);
+	if (!ast_test_flag64(confflags, CONFFLAG_DONT_DENOISE) && ast_module_check("func_speex.so")) {
 		ast_func_write(chan, "DENOISE(rx)", "on");
 	}
 
diff --git a/main/loader.c b/main/loader.c
index 7b031b6..b07efc1 100644
--- a/main/loader.c
+++ b/main/loader.c
@@ -716,8 +716,9 @@
 	int i, which=0, l = strlen(word);
 	char *ret = NULL;
 
-	if (pos != rpos)
+	if (pos != rpos) {
 		return NULL;
+	}
 
 	AST_DLLIST_LOCK(&module_list);
 	AST_DLLIST_TRAVERSE(&module_list, cur, entry) {
@@ -730,10 +731,11 @@
 	}
 	AST_DLLIST_UNLOCK(&module_list);
 
-	if (!ret) {
+	if (!ret && needsreload) {
 		for (i=0; !ret && reload_classes[i].name; i++) {
-			if (!strncasecmp(word, reload_classes[i].name, l) && ++which > state)
+			if (!strncasecmp(word, reload_classes[i].name, l) && ++which > state) {
 				ret = ast_strdup(reload_classes[i].name);
+			}
 		}
 	}
 

-- 
To view, visit https://gerrit.asterisk.org/6935
To unsubscribe, visit https://gerrit.asterisk.org/settings

Gerrit-Project: asterisk
Gerrit-Branch: 13
Gerrit-MessageType: merged
Gerrit-Change-Id: Iaed8c1e4fcbeb242921dbac7929a0fe75ff4b239
Gerrit-Change-Number: 6935
Gerrit-PatchSet: 1
Gerrit-Owner: Corey Farrell <git at cfware.com>
Gerrit-Reviewer: George Joseph <gjoseph at digium.com>
Gerrit-Reviewer: Jenkins2
Gerrit-Reviewer: Joshua Colp <jcolp at digium.com>
Gerrit-Reviewer: Sean Bright <sean.bright at gmail.com>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.digium.com/pipermail/asterisk-code-review/attachments/20171030/1dd7eb9f/attachment-0001.html>


More information about the asterisk-code-review mailing list