[asterisk-commits] mjordan: branch 12 r400196 - /branches/12/funcs/func_cdr.c
SVN commits to the Asterisk project
asterisk-commits at lists.digium.com
Mon Sep 30 14:57:38 CDT 2013
Author: mjordan
Date: Mon Sep 30 14:57:36 2013
New Revision: 400196
URL: http://svnview.digium.com/svn/asterisk?view=rev&rev=400196
Log:
Parse arguments passed to the CDR_PROP function correctly
I can only blame this on a bad merge, because this in no way worked properly
the way it was written. Mea culpa. The function should now parse its arguments
correctly and function properly. (Note that the API used by the CDR_PROP
function has working unit tests... this was merely bad coding of the actual
registered function)
(closes issue ASTERISK-22613)
Reported by: Private Name
Modified:
branches/12/funcs/func_cdr.c
Modified: branches/12/funcs/func_cdr.c
URL: http://svnview.digium.com/svn/asterisk/branches/12/funcs/func_cdr.c?view=diff&rev=400196&r1=400195&r2=400196
==============================================================================
--- branches/12/funcs/func_cdr.c (original)
+++ branches/12/funcs/func_cdr.c Mon Sep 30 14:57:36 2013
@@ -349,12 +349,23 @@
{
enum ast_cdr_options option;
- if (!strcasecmp("party_a", cmd)) {
+ AST_DECLARE_APP_ARGS(args,
+ AST_APP_ARG(variable);
+ AST_APP_ARG(options);
+ );
+
+ if (ast_strlen_zero(parse) || !value || !chan) {
+ return -1;
+ }
+
+ AST_STANDARD_APP_ARGS(args, parse);
+
+ if (!strcasecmp("party_a", args.variable)) {
option = AST_CDR_FLAG_PARTY_A;
- } else if (!strcasecmp("disable", cmd)) {
+ } else if (!strcasecmp("disable", args.variable)) {
option = AST_CDR_FLAG_DISABLE_ALL;
} else {
- ast_log(AST_LOG_WARNING, "Unknown option %s used with CDR_PROP\n", cmd);
+ ast_log(AST_LOG_WARNING, "Unknown option %s used with CDR_PROP\n", args.variable);
return 0;
}
More information about the asterisk-commits
mailing list