[asterisk-bugs] [JIRA] (ASTERISK-23911) URIENCODE/URIDECODE: WARNING about passing an empty string is a bit over zealous
Matt Jordan (JIRA)
noreply at issues.asterisk.org
Thu Jun 19 17:01:56 CDT 2014
Matt Jordan created ASTERISK-23911:
--------------------------------------
Summary: URIENCODE/URIDECODE: WARNING about passing an empty string is a bit over zealous
Key: ASTERISK-23911
URL: https://issues.asterisk.org/jira/browse/ASTERISK-23911
Project: Asterisk
Issue Type: Bug
Security Level: None
Reporter: Matt Jordan
A common usage of {{URIENCODE}}/{{URIDECODE}} is to escape arguments passed to applications. This is particularly useful when said arguments contain delimeters that might otherwise be interpreted by the application itself.
Sometimes, however, the variable being escaped is empty. That isn't an error - in that case, we don't have any parameter that we want to pass to the application. However, currently when this occurs, URIENCODE complains mightily:
{code}
WARNING[4943]: func_uri.c:79 uriencode: Syntax: URIENCODE(<data>) - missing argument!
{code}
Working around this is cumbersome in the dialplan. This:
{code}
same => n,Stasis(myapp,${URIENCODE(${ARGS}))
{code}
Becomes:
{code}
same => n,GotoIf($[${LEN(${ARGS})} = 0]skip:)
same => n,Set(ARGS=${URIENCODE(${ARGS})})
same => n(skip),NoOp()
same => n,Stasis(MyApp,${ARGS})
{code}
Which is way more convoluted than just ignoring the empty string in the first place.
--
This message was sent by Atlassian JIRA
(v6.2#6252)
More information about the asterisk-bugs
mailing list