Hi,
Is
(defun foo ()
(let ((frame (make-application-frame 'climacs)))
(clim-sys:make-process (lambda () (run-frame-top-level frame)))
(execute-frame-command frame `(com-find-file "/tmp/foo.txt"))))
expected to be "safe"? At present, this is subject to a race
condition, because the frame need not have been adopted properly by
the time the execute-frame-command runs, and so it need not have a
top-level sheet.
Would it be reasonable to guard against this in the branch of
execute-frame-command, and if so, how? There's a symmetric case
(which is probably less common) where the frame command is executed
just after the top-level sheet is disowned.
Any ideas? It would be nice to support something along the lines of
my FOO function above -- it seems like a natural expression of a
response to user action.
Cheers,
Christophe