Incidentally, I noticed during debugging that GNUstep applications do
not respond to DO messages while in a modal dialog loop. This
means that
if the user or a background application attempts to connect to a
running
application while that application presents a modal dialog, a new
instance of the application is launched. If your are using
GWorkspace,
just put in it into a state where it presents a modal dialog (in the
default configuration move a file do a different folder or to the
trash), then switch to a terminal and call gopen. After a short delay
when the timeout of [conn rootProxy] has expired a new instance of
GWorkspace is started. If your are not using GWorkspace, you can
use Ink
instead. Open its open panel and then use gopen -a Ink to open a rtf
document. Again, after a short delay this will start a new
instance of
Ink. Both behaviors are really annoying. Of course, it is quite
unlikely
that a user will gopen a document while its application is
presenting a
modal dialog, but this situation could easily arise with background
tools using GWorkspace to launch applications or present documents
(or
just check the list of running applications!).