ID:1860683
 
BYOND Version:507
Operating System:Windows 8
Web Browser:Chrome 43.0.2357.65
Applies to:DM Language
Status: Verified

A member of our crack team of bug testers has verified that this issue is reproducible, and has handed it off to the development team for investigation.
Descriptive Problem Summary:
Under certain circumstances, this runtime can be thrown in places where it, theoretically, shouldn't be an issue.
Numbered Steps to Reproduce Problem:
Launch example world code.
Use "light" var, and enter anything (or nothing) into the text window that appears.
Read the runtime that appears.

Code Snippet (if applicable) to Reproduce Problem:
mob
name = "test"
step_size = 8
var/lit = 0
verb
light(var/flavor_text = "[usr] lights the [name]." as text)
if(!lit)
lit = 1
var/turf/T = loc
src << "Executed successfully."


Expected Results:
Src.lit becomes 1, no runtimes thrown, code continues.
Actual Results:
Runtime thrown, verb is interrupted. (This also interrupts procs.)
Does the problem occur:
Every time? Or how often? EVERY time.
In other games? Yes.
In other user accounts? Yes.
On other computers? Yes.

When does the problem NOT occur?
When instead of this line:
if(!lit)

We use this:
if(!src.lit)

Did the problem NOT occur in any earlier versions? If so, what was the last version that worked? (Visit http://www.byond.com/download/build to download old versions for testing.)
Unknown.
Workarounds:
Using src.lit instead of lit prevents the runtime, but shouldn't need to be specified in this instance.
Lummox JR changed status to 'Verified'
This appears to be a variant of an old bug, but that bug only shows up when a proc has a default value like myarg=src.something.