* select.cc (select_stuff::wait): Temporarily disable restarting
entirely.
This commit is contained in:
parent
d560c4b2ba
commit
d6719f7e17
|
@ -1,3 +1,8 @@
|
||||||
|
2012-05-29 Corinna Vinschen <corinna@vinschen.de>
|
||||||
|
|
||||||
|
* select.cc (select_stuff::wait): Temporarily disable restarting
|
||||||
|
entirely.
|
||||||
|
|
||||||
2012-05-29 Corinna Vinschen <corinna@vinschen.de>
|
2012-05-29 Corinna Vinschen <corinna@vinschen.de>
|
||||||
|
|
||||||
* security.h (cygsidlist::+=): Correctly copy well_known_sid info from
|
* security.h (cygsidlist::+=): Correctly copy well_known_sid info from
|
||||||
|
|
|
@ -331,13 +331,17 @@ select_stuff::wait (fd_set *readfds, fd_set *writefds, fd_set *exceptfds,
|
||||||
{
|
{
|
||||||
case WAIT_OBJECT_0:
|
case WAIT_OBJECT_0:
|
||||||
select_printf ("signal received");
|
select_printf ("signal received");
|
||||||
|
#if 0
|
||||||
/* FIXME? Partial revert of change from 2012-01-22. If the signal
|
/* FIXME? Partial revert of change from 2012-01-22. If the signal
|
||||||
handler is called before the threads are stopped via cleanup,
|
handler is called before the threads are stopped via cleanup,
|
||||||
emacs 24.x crashes in thread_pipe. For now, do not call the
|
emacs 24.x crashes in thread_pipe. Just restarting without
|
||||||
signal handler if we're not in the main thread, but cleanup
|
calling the signal handler makes select entirely uninterruptible
|
||||||
before calling the signal handler. */
|
when called from a thread not the main thread, see
|
||||||
|
http://cygwin.com/ml/cygwin/2012-05/msg00580.html
|
||||||
|
So, for now, just disable restarting entirely. */
|
||||||
if (!return_on_signal)
|
if (!return_on_signal)
|
||||||
goto looping; /* Emulate linux behavior */
|
goto looping; /* Emulate linux behavior */
|
||||||
|
#endif
|
||||||
cleanup ();
|
cleanup ();
|
||||||
_my_tls.call_signal_handler ();
|
_my_tls.call_signal_handler ();
|
||||||
set_sig_errno (EINTR);
|
set_sig_errno (EINTR);
|
||||||
|
@ -389,7 +393,9 @@ select_stuff::wait (fd_set *readfds, fd_set *writefds, fd_set *exceptfds,
|
||||||
cleanup ();
|
cleanup ();
|
||||||
goto out;
|
goto out;
|
||||||
}
|
}
|
||||||
|
#if 0
|
||||||
looping:
|
looping:
|
||||||
|
#endif
|
||||||
if (ms == INFINITE)
|
if (ms == INFINITE)
|
||||||
{
|
{
|
||||||
select_printf ("looping");
|
select_printf ("looping");
|
||||||
|
|
Loading…
Reference in New Issue