From e34b7a8d4021ac451bdd8bad5b1a1be30c9897f0 Mon Sep 17 00:00:00 2001 From: Sebastian Huber Date: Fri, 13 May 2016 14:59:31 +0200 Subject: posix: Fix return status of pthread_cancel() POSIX recommends ESRCH in case no thread exists for the specified identifier. Update #2713. --- cpukit/posix/src/cancel.c | 2 +- testsuites/psxtests/psxcancel/init.c | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/cpukit/posix/src/cancel.c b/cpukit/posix/src/cancel.c index 0167c0a328..56712d89a9 100644 --- a/cpukit/posix/src/cancel.c +++ b/cpukit/posix/src/cancel.c @@ -63,5 +63,5 @@ int pthread_cancel( break; } - return EINVAL; + return ESRCH; } diff --git a/testsuites/psxtests/psxcancel/init.c b/testsuites/psxtests/psxcancel/init.c index 96341f100a..6286c6587a 100644 --- a/testsuites/psxtests/psxcancel/init.c +++ b/testsuites/psxtests/psxcancel/init.c @@ -91,9 +91,9 @@ void *countTaskAsync(void *ignored) sc = pthread_setcanceltype(12, &old); fatal_posix_service_status( sc, EINVAL, "cancel type EINVAL" ); - puts( "Init - pthread_cancel - bad ID - EINVAL" ); + puts( "Init - pthread_cancel - bad ID - ESRCH" ); sc = pthread_cancel(0x100); - fatal_posix_service_status( sc, EINVAL, "cancel bad Id" ); + fatal_posix_service_status( sc, ESRCH, "cancel bad Id" ); /* Start countTask deferred */ { -- cgit v1.2.3