aboutsummaryrefslogtreecommitdiff
path: root/sysdeps/pthread/tst-cancel2.c
diff options
context:
space:
mode:
Diffstat (limited to 'sysdeps/pthread/tst-cancel2.c')
-rw-r--r--sysdeps/pthread/tst-cancel2.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/sysdeps/pthread/tst-cancel2.c b/sysdeps/pthread/tst-cancel2.c
index ac38b50115..b4f7098235 100644
--- a/sysdeps/pthread/tst-cancel2.c
+++ b/sysdeps/pthread/tst-cancel2.c
@@ -32,6 +32,10 @@ tf (void *arg)
char buf[100000];
while (write (fd[1], buf, sizeof (buf)) > 0);
+ /* The write can return -1/EPIPE if the pipe was closed before the
+ thread calls write, which signals a side-effect that must be
+ signaled to the thread. */
+ pthread_testcancel ();
return (void *) 42l;
}