If you attempt to remove null, "", or 0 from a /savefile's dir, it'll wipe the savefile.
Numbered Steps to Reproduce Problem:
1.) Create or load a savefile.
2.) IF created, populate the savefile.
3.) F.dir -= null
4.) Observe F.dir.len drop from whatever it was to 0.
Code Snippet (if applicable) to Reproduce Problem:
mob/Login()
..()
var/savefile/F = new
F["hi"] << 6
F["s"] << 53
F["lol"] << "LOL"
world << F.dir.len
F.dir -= 0
world << F.dir.len
Expected Results:
Output "3" then "3"
Actual Results:
Outputs "3" then "0"
Does the problem occur:
Every time? Or how often? Every time I remove any of the abovementioned entries.
In other games? I reckon so.
In other user accounts? I reckon so.
On other computers? I reckon so.
When does the problem NOT occur? When you're not removing 0, "", or null.
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.)
I'm pretty sure it's been around for a while.
Workarounds: Proper sanity checks.