aboutsummaryrefslogtreecommitdiff
path: root/lib/libc_r/test/join_leak_d.c
diff options
context:
space:
mode:
authorMike Makonnen <mtm@FreeBSD.org>2003-06-04 08:16:32 +0000
committerMike Makonnen <mtm@FreeBSD.org>2003-06-04 08:16:32 +0000
commitf833c84a8f5b42ac1c4dca08b79644e077d219c8 (patch)
treef0bb24764e380fdc42f65b80a0de44497297ba40 /lib/libc_r/test/join_leak_d.c
parent3b68228cce5f03045ce898610d1f03f9bbc1ed2f (diff)
If the library is not able to create a thread because resources
don't allow it at the moment, the correct thing to do is try again. Otherwise, libthr would fail this test because it doesn't allow an unlimited number of concurrent threads per application.
Notes
Notes: svn path=/head/; revision=115819
Diffstat (limited to 'lib/libc_r/test/join_leak_d.c')
-rw-r--r--lib/libc_r/test/join_leak_d.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/lib/libc_r/test/join_leak_d.c b/lib/libc_r/test/join_leak_d.c
index 6532ca5bfc74..9a351400e316 100644
--- a/lib/libc_r/test/join_leak_d.c
+++ b/lib/libc_r/test/join_leak_d.c
@@ -65,6 +65,10 @@ main(void)
for (i = 0; i < NITERATIONS; i++) {
if ((error = pthread_create(&thread, NULL, thread_entry, NULL))
!= 0) {
+ if (error == EAGAIN) {
+ i--;
+ continue;
+ }
fprintf(stderr, "Error in pthread_create(): %s\n",
strerror(error));
exit(1);