[asterisk-bugs] [Asterisk 0013249]: AEL does not translate quoted strings correctly in 1.6
Asterisk Bug Tracker
noreply at bugs.digium.com
Tue Aug 26 16:30:43 CDT 2008
A NOTE has been added to this issue.
======================================================================
http://bugs.digium.com/view.php?id=13249
======================================================================
Reported By: dimas
Assigned To: murf
======================================================================
Project: Asterisk
Issue ID: 13249
Category: Core/PBX
Reproducibility: always
Severity: minor
Priority: normal
Status: acknowledged
Asterisk Version: 1.6.0-beta9
SVN Branch (only for SVN checkouts, not tarball releases): N/A
SVN Revision (number only!):
Disclaimer on File?: N/A
Request Review:
======================================================================
Date Submitted: 2008-08-06 09:48 CDT
Last Modified: 2008-08-26 16:30 CDT
======================================================================
Summary: AEL does not translate quoted strings correctly in
1.6
Description:
I used to use constructs like
a = "test here";
in the Asterisk AEL scripts. These were working fine in 1.4 (translating
to)
Set(a=$[ "test here"])
This does not work for 1.6 anymore although translates to exactly the same
dialplan. After executing this line the value of a variable on 1.6 contains
quotes.
This results in:
1. The following construct:
b = "${a}";
does not work at all giving parse error [Aug 6 18:01:24] WARNING[29514]:
ast_expr2.fl:437 ast_yyerror: ast_yyerror(): syntax error: syntax error,
unexpected '<token>', expecting $end; Input:
2. when the variable being assigned is CALLERID(number) - this results in
sending
From: ""test here"" <sip:xxxxxxxxxxx at 1.2.3.4>;tag=as1539ede1
in the SIP INVITE header. Note the double quotes. As result, the Aastra
57i phone rejects the invite with 400 Bad Request.
======================================================================
----------------------------------------------------------------------
(0091761) murf (administrator) - 2008-08-26 16:30
http://bugs.digium.com/view.php?id=13249#c91761
----------------------------------------------------------------------
Which brings me back to using the MSet() app to assign a value to a
variable.
It will do all the things that used to be done with the previous version.
If I were to write code to strip the surrounding quotes from the input, I
would just
copy the code in the ast_app_separate_args code, which is what gets called
by MSet().
It would simply replicate what asterisk and AEL used to do before
app_set=1.6.
It would only do this, of course, if app_set=1.6.
dimas-- you say it will break scripts where commas/pipes are in the RHS of
an assignment, but I'm not seeing the problem-- if your scripts worked
under 1.4,
with MSet, they should continue to work when app_set=1.6.
Issue History
Date Modified Username Field Change
======================================================================
2008-08-26 16:30 murf Note Added: 0091761
======================================================================
More information about the asterisk-bugs
mailing list