Summary: | ASTERISK-10975: IF() function crashes when using invalid syntax | ||
Reporter: | Jon Webster (jon) | Labels: | |
Date Opened: | 2007-12-04 16:20:10.000-0600 | Date Closed: | 2011-06-07 14:00:41 |
Priority: | Critical | Regression? | No |
Status: | Closed/Complete | Components: | Functions/func_logic |
Versions: | Frequency of Occurrence | ||
Related Issues: | |||
Environment: | Attachments: | ||
Description: | The tests go fine until I tried something that is clearly invalid IF syntax such as ${IF(0:false)} down at priority 11. Those admins, always doing things they arn't supposed to... Now, if you tried console dial 401@local asterisk crashes. When you do it from a phone asterisk does not crash until you do something like 'show function IF' ****** ADDITIONAL INFORMATION ****** [local] exten => 401,1,NoOp(1?true:false ${IF(1?true:false)}) exten => 401,n,NoOp(0?true:false ${IF(0?true:false)}) exten => 401,n,NoOp(true?true:false ${IF(true?true:false)}) exten => 401,n,NoOp(false?true:false ${IF(false?true:false)}) exten => 401,n,NoOp(true?true ${IF(true?true)}) exten => 401,n,NoOp(false?true ${IF(false?true)}) exten => 401,n,NoOp(0?true ${IF(0?true)}) exten => 401,n,NoOp(1?true ${IF(1?true)}) exten => 401,n,NoOp(true:false ${IF(true:false)}) exten => 401,n,NoOp(false:false ${IF(false:false)}) exten => 401,n,NoOp(0:false ${IF(0:false)}) exten => 401,n,NoOp(1:false ${IF(1:false)}) -- Executing [401@local:1] NoOp("SIP/office2-083f6fc0", "1?true:false true") in new stack -- Executing [401@local:2] NoOp("SIP/office2-083f6fc0", "0?true:false false") in new stack -- Executing [401@local:3] NoOp("SIP/office2-083f6fc0", "true?true:false true") in new stack -- Executing [401@local:4] NoOp("SIP/office2-083f6fc0", "false?true:false true") in new stack -- Executing [401@local:5] NoOp("SIP/office2-083f6fc0", "true?true true") in new stack -- Executing [401@local:6] NoOp("SIP/office2-083f6fc0", "false?true true") in new stack -- Executing [401@local:7] NoOp("SIP/office2-083f6fc0", "0?true ") in new stack -- Executing [401@local:8] NoOp("SIP/office2-083f6fc0", "1?true true") in new stack -- Executing [401@local:9] NoOp("SIP/office2-083f6fc0", "true:false ue:false") in new stack -- Executing [401@local:10] NoOp("SIP/office2-083f6fc0", "false:false lse:false") in new stack -- Executing [401@local:11] NoOp("SIP/office2-083f6fc0", "0:false a#¶Te#") in new stack -- Executing [401@local:12] NoOp("SIP/office2-083f6fc0", "1:false false") in new stack | ||
Comments: | By: Russell Bryant (russell) 2007-12-04 16:39:59.000-0600 I think this has already been fixed. Please try with the latest version ... By: Jon Webster (jon) 2007-12-04 16:56:21.000-0600 Confirmed it was fixed in 1.4.14. My apologies, I looked for an easy fix in the svn 1.4 branch instead of the code that was actually in use... By: Jason Parker (jparker) 2007-12-04 16:58:34.000-0600 Already fixed in 1.4.15. |