[mcclim-devel] execute-frame-command

Christophe Rhodes csr21 at cam.ac.uk
Thu May 25 11:52:21 UTC 2006


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



More information about the mcclim-devel mailing list