setsid(2) creates a new session and connection to the controlling terminal is lost. The calling process becomes the new session and process group leader. This is commonly used to disconnect from a terminal when writing a daemon.
I doubt it is relevant here. The editor being launched is an X-Windows application which does not use STDIN/OUT/SHAKEITALLABOUT. Is it Friday yet?