bug-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#3225: session manager hang due to block on ice_fd (failure to check


From: Jan D.
Subject: bug#3225: session manager hang due to block on ice_fd (failure to check for EINTR in select)
Date: Thu, 06 Oct 2011 08:08:27 +0200
User-agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:7.0.1) Gecko/20110929 Thunderbird/7.0.1

Karl Tomlinson skrev 2011-10-06 01:54:
Glenn Morris writes:

Karl Tomlinson wrote:

x_session_check_input in xmsfns.c has this code:

   if (select (ice_fd+1,&read_fds,
               (SELECT_TYPE *)0, (SELECT_TYPE *)0,&tmout)<  0)
     {
       ice_fd = -1;
       return 0;
     }

So ice_fd is set to -1 when select returns due to a signal
(with errno == EINTR).  This leaves the fd open but prevents
further processing.

Sorry for the delay. Is this still an issue? The current code does not
look like that.

I haven't tested, but it looks like this should be fixed by
http://bzr.savannah.gnu.org/lh/emacs/trunk/revision/103065


It should be. The select call in process.c is now used and it handles EINTR properly.

        Jan D.






reply via email to

[Prev in Thread] Current Thread [Next in Thread]