GNU bug report logs - #25481
`guile --listen' broken on guile master

Previous Next

Package: guile;

Reported by: Christopher Allan Webber <cwebber <at> dustycloud.org>

Date: Thu, 19 Jan 2017 00:48:01 UTC

Severity: normal

Done: Andy Wingo <wingo <at> pobox.com>

Bug is archived. No further changes may be made.

Full log


Message #10 received at 25481-done <at> debbugs.gnu.org (full text, mbox):

From: Andy Wingo <wingo <at> pobox.com>
To: Christopher Allan Webber <cwebber <at> dustycloud.org>
Cc: 25481-done <at> debbugs.gnu.org
Subject: Re: bug#25481: `guile --listen' broken on guile master
Date: Wed, 01 Mar 2017 17:30:11 +0100
On Thu 19 Jan 2017 01:47, Christopher Allan Webber <cwebber <at> dustycloud.org> writes:

> (originally accidentally sent to guile-devel instead of here, sorry for
> xpost!)
>
> If you use the latest Guile, you'll find that "guile --listen" has
> broken.  If you try:
>   ./meta/guile --listen=/tmp/guile-socket
>
> then you'll find that you have a very short window in which you can do:
>   M-x geiser-connect-local <RET> guile <RET> /tmp/guile-socket <RET>
>
> but then the main repl, the one you launched in the shell, hangs.
> And if you wait too long or disconnect then reconnect, you won't be
> able to connect again.
>
> What you'll see in the guile process is this:
>
>   scheme@(guile-user)> In thread:
>   ERROR: In procedure select: Interrupted system call

select really shouldn't be throwing exceptions on EINTR; it should be
called in a loop anyway, so calling scheme can run interrupts then.
Changed select to just return when async interrupts are pending
(e.g. the post-GC hooks), which seems to fix this bug.

Andy




This bug report was last modified 8 years and 162 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.