[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#11884: 24.1.50; a regression with pselect(2) on FreeBSD after r10868
From: |
Paul Eggert |
Subject: |
bug#11884: 24.1.50; a regression with pselect(2) on FreeBSD after r108687 |
Date: |
Mon, 16 Jul 2012 19:20:42 -0700 |
User-agent: |
Mozilla/5.0 (X11; Linux i686; rv:13.0) Gecko/20120615 Thunderbird/13.0.1 |
Thanks for that bug report. Herbert J. Skuhra also
privately reported the same bug, and was gracious enough to
give me a login on a FreeBSD host where I could reproduce
your test case and debug the problem.
I found two related bugs. First, Emacs's 'configure' script
incorrectly assumed that pthread_sigmask wasn't working on
FreeBSD; this is fixed in Emacs trunk bzr 109107.
Second, the gnulib fallback code for pthread_sigmask
incorrectly assumed that FreeBSD's pthread_sigmask (1729,
NULL, NULL) returns a nonzero error number, which it does
not -- it returns 0. This is arguably a POSIX-compliance
bug in FreeBSD, but a bug like this is something that should
not make Emacs hang. This is fixed by Emacs trunk bzr
109099.
I'm marking the bug as done; please feel free to reopen it if
this fix does not work for you.
Here's some URLs if you want to see diffs:
http://bzr.savannah.gnu.org/lh/emacs/trunk/revision/109099
http://bzr.savannah.gnu.org/lh/emacs/trunk/revision/109107