ID:1946035
 
Resolved
Server-side parsing/expansion did not account for format characters, and also did not properly escape a leading single quote when sending back the expansion list.
BYOND Version:508
Operating System:Windows 7 Ultimate 64-bit
Web Browser:Chrome 46.0.2490.33
Applies to:Dream Daemon
Status: Resolved (509.1301)

This issue has been resolved.
edit: further testing showed that \improper was not needed to trigger the bug, despite the linked issue report claiming
Descriptive Problem Summary:
https://github.com/tgstation/-tg-station/issues/11856
In short, verbs that take an argument as thing in view/oview/range/world/list/etc fail if you attempt to use them on an object whose name starts with a non-letter/number character like ' or '.'


Numbered Steps to Reproduce Problem:
(this will pass on the first item, and fail on the other two)
Run the test-list-handling verb.
Select first item.
Enter.
Repeat for the other two items.

Expected Results:
test1
'test2
.test3

Actual Results:
test1
Sorry, the following is not valid: 'test2
usage: test-list-handling parameter
Sorry, the following is not valid: .test3
usage: test-list-handling parameter
Code
client {
verb {
testlisthandling(var/t in nametestingobjs) {
set name="test list handling"
set category="test"
src << t
}
}
}
var {
list {
obj {
nametestingobjs = list(new /obj/testname1(),new /obj/testname2(),new /obj/testname3())
}
}

}
obj {
testname1 {
name = "\improper test1"
}
testname2 {
name = "\improper 'test2"
}
testname3 {
name = "\improper .test3"
}
}
Lummox JR resolved issue with message:
Server-side parsing/expansion did not account for format characters, and also did not properly escape a leading single quote when sending back the expansion list.