Source-Changes-HG archive

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

[src/trunk]: src/lib/libc/thread-stub Adjust the error return value of pthrea...



details:   https://anonhg.NetBSD.org/src/rev/3a0471311255
branches:  trunk
changeset: 968387:3a0471311255
user:      kamil <kamil%NetBSD.org@localhost>
date:      Tue Jan 14 18:18:59 2020 +0000

description:
Adjust the error return value of pthread_sigmask for !libpthread usage

Instead of returning -1, return errno on error.

Catch up after the fix in libpthread by Andrew Doran in 2008
in lib/libpthread/pthread_misc.c r.1.9.

It's an open question whether this function shall be used without linked
in the POSIX thread library.

Detected by Bruno Haible (GNU) and documented in gnulib in commit
"pthread_sigmask: Avoid test failure on NetBSD 8.0. " r. 4d16a83b0c1fcb6c.

diffstat:

 lib/libc/thread-stub/thread-stub.c |  8 +++++---
 1 files changed, 5 insertions(+), 3 deletions(-)

diffs (29 lines):

diff -r ce5e9518398f -r 3a0471311255 lib/libc/thread-stub/thread-stub.c
--- a/lib/libc/thread-stub/thread-stub.c        Tue Jan 14 16:48:18 2020 +0000
+++ b/lib/libc/thread-stub/thread-stub.c        Tue Jan 14 18:18:59 2020 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: thread-stub.c,v 1.29 2019/03/05 01:35:52 christos Exp $        */
+/*     $NetBSD: thread-stub.c,v 1.30 2020/01/14 18:18:59 kamil Exp $   */
 
 /*-
  * Copyright (c) 2003, 2009 The NetBSD Foundation, Inc.
@@ -31,7 +31,7 @@
 
 #include <sys/cdefs.h>
 #if defined(LIBC_SCCS) && !defined(lint)
-__RCSID("$NetBSD: thread-stub.c,v 1.29 2019/03/05 01:35:52 christos Exp $");
+__RCSID("$NetBSD: thread-stub.c,v 1.30 2020/01/14 18:18:59 kamil Exp $");
 #endif /* LIBC_SCCS and not lint */
 
 /*
@@ -382,7 +382,9 @@
 
        CHECK_NOT_THREADED();
 
-       return sigprocmask(h, s, o);
+       if (sigprocmask(h, s, o))
+               return errno;
+       return 0;
 }
 
 thr_t



Home | Main Index | Thread Index | Old Index