[asterisk-commits] rizzo: trunk r47727 - /trunk/main/cli.c
asterisk-commits at lists.digium.com
asterisk-commits at lists.digium.com
Thu Nov 16 07:21:30 MST 2006
Author: rizzo
Date: Thu Nov 16 08:21:30 2006
New Revision: 47727
URL: http://svn.digium.com/view/asterisk?view=rev&rev=47727
Log:
make kevin (and 64 bit machines) happy and
remove a cast from char* to int in handling the return
values from new-style handlers.
On passing, note that main/loader.c::ast_load_resource() always return 0
so errors are not propagated up. I am not sure this is the intended
behaviour.
Modified:
trunk/main/cli.c
Modified: trunk/main/cli.c
URL: http://svn.digium.com/view/asterisk/trunk/main/cli.c?view=diff&rev=47727&r1=47726&r2=47727
==============================================================================
--- trunk/main/cli.c (original)
+++ trunk/main/cli.c Thu Nov 16 08:21:30 2006
@@ -1649,9 +1649,16 @@
*/
args[0] = (char *)e;
if (e->new_handler) { /* new style */
+ char *retval;
struct ast_cli_args a = {
.fd = fd, .argc = x, .argv = args+1 };
- res = (int)e->new_handler(e, CLI_HANDLER, &a);
+ retval = e->new_handler(e, CLI_HANDLER, &a);
+ if (retval == CLI_SUCCESS)
+ res = RESULT_SUCCESS;
+ else if (retval == CLI_SHOWUSAGE)
+ res = RESULT_SHOWUSAGE;
+ else
+ res = RESULT_FAILURE;
} else { /* old style */
res = e->handler(fd, x, args + 1);
}
@@ -1662,6 +1669,9 @@
else
ast_cli(fd, "Invalid usage, but no usage information available.\n");
break;
+ case RESULT_FAILURE:
+ ast_cli(fd, "Command '%s' failed.\n", s);
+ /* FALLTHROUGH */
default:
AST_LIST_LOCK(&helpers);
if (e->deprecated == 1) {
More information about the asterisk-commits
mailing list