Bug in pthread_equal
Christopher Faylor
cgf@redhat.com
Thu Jul 26 13:47:00 GMT 2001
On Thu, Jul 26, 2001 at 03:22:52PM +0200, Pieter de Visser wrote:
>There seems to be a bug in pthread_equal:
>
> int pthread_equal(pthread_t t1, pthread_t t2)
>
>should return a non-zero value if t1 and t2 refer to the same thread, and a
>zero value otherwise. With the Cygwin DLL 1.3.2 implementation, it is the other
>way around: the function returns zero if t1 and t2 refer to the same thread,
>and a non-zero value otherwise.
>
>One way to solve this would be to change
>cygwin-1.3.2-1/winsup/cygwin/thread.cc, at line 1811: replace
>
>int
>__pthread_equal (pthread_t * t1, pthread_t * t2)
>{
> return (*t1 - *t2);
>}
>
>with
>
>int
>__pthread_equal (pthread_t * t1, pthread_t * t2)
>{
> return (*t1 == *t2);
>}
Looks right to me. I've applied this change.
Thanks for tracking it down.
cgf
--
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Bug reporting: http://cygwin.com/bugs.html
Documentation: http://cygwin.com/docs.html
FAQ: http://cygwin.com/faq/
More information about the Cygwin
mailing list