mob
Login()
..()
var/file = input("choose file") as null|icon
if(!file)
alert("file is null")
del(src)
var/icon/ic = icon(file)
//do stuff with ic, or nothing, doesn't matter
src << ftp(ic, "[file].dmi") //this line won't happen.
sleep(1)
del(src)
I would expect that ftp() doesn't actually return until finished, but it returns immediately and then del(src) is called 100 ms later and the FTP dialog is never shown.
If it were blocking, I think most people would end up spawn()ing it anyways, which makes me question how valuable such a feature would be.