Fix Coverity-reported ARRAY_VS_SINGLETON error.
authorMark Michelson <mmichelson@digium.com>
Tue, 1 May 2012 23:11:22 +0000 (23:11 +0000)
committerMark Michelson <mmichelson@digium.com>
Tue, 1 May 2012 23:11:22 +0000 (23:11 +0000)
As it turned out, this wasn't a huge deal. We were calling
ast_app_parse_options() for a set of options of which none
took arguments. The proper thing to do for this case is to
pass NULL for the "args" parameter here. We were instead passing
a seemingly-randomly chosen char * from the function. While this
would never get written to, you can rest assured things would
have gotten bad had new options (which took arguments) been added
to func_volume.

(closes issue ASTERISK-19656)
........

Merged revisions 364899 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........

Merged revisions 364900 from http://svn.asterisk.org/svn/asterisk/branches/10

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@364901 65c4cc65-6c06-0410-ace0-fbb531ad65f3

funcs/func_volume.c

index 806564b..39b5a8a 100644 (file)
@@ -206,7 +206,7 @@ static int volume_write(struct ast_channel *chan, const char *cmd, char *data, c
        
        if (!ast_strlen_zero(args.options)) {
                struct ast_flags flags = { 0 };
-               ast_app_parse_options(volume_opts, &flags, &data, args.options);
+               ast_app_parse_options(volume_opts, &flags, NULL, args.options);
                vi->flags = flags.flags;
        } else { 
                vi->flags = 0;