Windows: SLIME/Swank freezes on GUI-related input. (Was: Stumped - Java hangs when using Swing in Slime)

17 views
Skip to first unread message

Rickard Bennekom

unread,
Mar 3, 2010, 5:03:36 PM3/3/10
to Clojure
As of Clojure 1.1.0, the problem still persists.
Apparently, it seems to be linked to Slime input that involves GUI-
related system calls.

On my system (Windows XP SP3, 32 Bit, JRE 1.6.0_18, JDK 1.6.0_12) it
can be reproduced as follows:
1. Install Clojure Box 1.1.0 (January 5, 2010)
2. Start the Slime REPL and enter these lines:
(use 'clojure.contrib.repl-utils)
(javadoc "snafu")
Result: The Slime REPL stalls and doesn't return a result.
4. Visit the *inferior-lisp* REPL buffer and place your cursor at the
command line. Press 'return'.
Result: The Slime thread continues and opens a Javadoc browser window.
The Slime REPL returns.

When the above lines are entered directly into the *inferior-lisp*
buffer they get executed promptly and without errors.

I haven't noticed any such problems on my Mac and Linux boxes.
On Windows, I keep some Elisp around to swiftly revive a stuck Slime
session:

(defun slime-poke-clojure ()
(interactive)
(slime-send-to-process "\n"))

(defun slime-send-to-process (command)
(interactive)
(let ((slime (slime-inferior-process)))
(if slime (comint-redirect-send-command-to-process
command (process-buffer slime) slime nil t)
(message "No Slime process running."))))

Phil Hagelberg

unread,
Mar 6, 2010, 12:58:09 AM3/6/10
to clo...@googlegroups.com
On Wed, Mar 3, 2010 at 2:03 PM, Rickard Bennekom <ylp...@googlemail.com> wrote:
> As of Clojure 1.1.0, the problem still persists.
> Apparently, it seems to be linked to Slime input that involves GUI-
> related system calls.
>
> On my system (Windows XP SP3, 32 Bit, JRE 1.6.0_18, JDK 1.6.0_12) it
> can be reproduced as follows:
> 1. Install Clojure Box 1.1.0 (January 5, 2010)
> 2. Start the Slime REPL and enter these lines:
> (use 'clojure.contrib.repl-utils)
> (javadoc "snafu")
> Result: The Slime REPL stalls and doesn't return a result.
> 4. Visit the *inferior-lisp* REPL buffer and place your cursor at the
> command line. Press 'return'.
> Result: The Slime thread continues and opens a Javadoc browser window.
> The Slime REPL returns.
>
> When the above lines are entered directly into the *inferior-lisp*
> buffer they get executed promptly and without errors.

Sorry, I don't have a Windows machine available to debug this problem.
Could you report it on the swank-clojure issue tracker so we can have
a record of it?

http://github.com/technomancy/swank-clojure/issues

Thanks,
Phil

Rickard Bennekom

unread,
Mar 6, 2010, 3:52:39 AM3/6/10
to Clojure
I've just filed a bug report:
http://github.com/technomancy/swank-clojure/issues#issue/10

Thanks,
Rickard

Reply all
Reply to author
Forward
0 new messages