With the Modeler that ships with OpenSTA 126.96.36.199, if you pass an empty string, i.e. "" as a parameter to a subroutine, all following parameters are ignored.
There is an example script below.
The first time CHECKRESPONSE is called with all 3 parameters populated, it works fine.
The second time CHECKRESPONSE is called with the first parameter set to "", it ignores all the parameters and uses the parameters passed the first time.
Problem has been confirmed by Bernie Velivis:
"I tried a simple subroutine with 4 string args. As soon as one (counting from left to right) is set to "", then all remaining arguments are set to "" or 0 if numeric. Looks like the code that parses arguments passed to subroutines quits when it see's a null. I would definitely report it on sourceforge."
============ EXAMPLE SCRIPT ==================
!Date : 14/08/2007
Wait UNIT MILLISECONDS
! Standard Defines
CONSTANT DEFAULT_HEADERS = ""
!Read in the default browser user agent field
Start Timer T_QQQQ
End Timer T_QQQQ
Log "Parameter 1:", p1
Log "Parameter 2:", p2
Log "Parameter 3:", p3
If (MESSAGE <> "") Then