Dear all,
I think I've stumbled on a bug: the / stop attribute (at least in expt elements) is sometimes not evaluated correctly. The following code provides an example:
<values>
/ TestStop = false
/ OtherStop = false
</values>
<expt MinimalExample>
/ blocks = [1 = HelloWorld]
/ stop = [
values.TestStop; values.OtherStop
]
</expt>
<block HelloWorld>
/ trials = [1 = HelloWorld]
</block>
<trial HelloWorld>
/ stimulustimes = [0 = HelloWorld]
/ timeout = 2000
</trial>
<text HelloWorld>
/ items = ("Hello World!")
</text>
This runs as expected, the trial is displayed. The / stop attribute is expected to fire if EITHER values.TestStop OR values.OtherStop OR both are true, preventing the trial from displaying.
If only OtherStop is true or if both are true, /stop acts as expected. However, if ONLY TestStop is true, the stop condition doesn't fire and the trial displays.
For now, a workaround would be to avoid listing /stop statements with semicolons and instead connect them via || (or) operators:
<expt MinimalExample>
/ blocks = [1 = HelloWorld]
/ stop = [
values.TestStop || values.OtherStop
]
</expt>