Hi Christian,

On 9/12/2024 9:21 AM, Christian Franke via Cygwin wrote:
Cygwin /usr/include/pthread.h:

int pthread_sigqueue (pthread_t *, int, const union sigval);

Linux /usr/include/x86_64-linux-gnu/bits/sigthread.h:

extern int pthread_sigqueue (pthread_t __threadid, int __signo,
                              const union sigval __value) __THROW;


It is apparently the case since the very first related patch:
https://sourceware.org/pipermail/cygwin-patches/2012q1/007565.html

RCS file: /cvs/src/src/winsup/cygwin/thread.cc,v
...
+extern "C" int
+pthread_sigqueue (pthread_t *thread, int sig, const union sigval value)
+{

Thanks for the report. There's a couple things wrong that I can see right off the bat. The first param should indeed be "pthread_t", and the Cygwin code that implements the function should treat that first param as a thread id. Currently it's treated as a 'pthread_t *' to match the prototype.

I'll work on a patch for these issues.

..mark


--
Problem reports:      https://cygwin.com/problems.html
FAQ:                  https://cygwin.com/faq/
Documentation:        https://cygwin.com/docs.html
Unsubscribe info:     https://cygwin.com/ml/#unsubscribe-simple

Reply via email to