[Openmcl-devel] Clozure Emacs/Slime problem in Win32
R. Matthew Emerson
rme at clozure.com
Thu Jun 11 15:06:27 PDT 2009
On Jun 10, 2009, at 7:03 PM, Greg Santucci wrote:
> When I try (cl-glut-examples:gears) at the slime "inferior-lisp"
> repl, the example runs normally. When I try it in the normal repl
> buffer, it will work only if I did it in the "inferior-lisp" repl
> first. If not, the window doesn't appear, and the repl says nothing.
> I can't find any error messages or prompts in the other buffers. If
> at the "inferior-lisp" repl I run another example, such as (cl-glut-
> examples:rb-robot), suddenly both the robot and gears windows appear
> and run normally.
I would expect that this is some sort of threading issue. The repl in
the *inferior-lisp* buffer is the initial thread. I believe that the
slime repl is a different thread.
Just as a wild guess, could it be due the issue with #_ShowWindow that
is discussed in ccl:examples;mswin.lisp?
Quoting from a comment therein:
;; Depending on how the lisp process was created, the first
call
;; to #_ShowWindow in that process might ignore its argument
;; (and instead use an argument specified in the STARTUPINFO
;; structure passed to #_CreateProcess.) SLIME under FSF Emacs
;; runs the lisp with this flag set, and it's possible to waste
;; a week or two trying to track this down. (Trust me.)
(#_ShowWindow hwnd #$SW_SHOW)
;; In case the parent process said to ignore #_ShowWindow's
argument
;; the first time it's called, call #_ShowWindow again. This
seems
;; to be harmless, if a little strange ...
(#_ShowWindow hwnd #$SW_SHOW)
>
> Interestingly, this problem doesn't occur with lispbuilder-sdl
> examples.
More information about the Openmcl-devel
mailing list