ref: 105ac4bf98ee9af043fc401716b5860f2d692200
parent: 2c0fcbf09a5faa2800421e792955222460c3a695
author: zamfofex <zamfofex@twdb.moe>
date: Wed Jul 10 08:40:47 EDT 2024
fix error handling for C11 threads
--- a/search.c
+++ b/search.c
@@ -215,6 +215,13 @@
result = pthread_create(&analysis->info[j].thread, NULL, &moonfish_start_search, analysis->info + j);
#ifndef moonfish_mini
+#ifdef moonfish_c11_threads
+ if (result != thrd_success)
+ {+ fprintf(stderr, "error creating thread\n");
+ exit(1);
+ }
+#else
if (result)
{fprintf(stderr, "%s\n", strerror(result));
@@ -221,6 +228,7 @@
exit(1);
}
#endif
+#endif
j++;
}
@@ -232,11 +240,19 @@
{result = pthread_join(analysis->info[i].thread, NULL);
#ifndef moonfish_mini
+#ifdef moonfish_c11_threads
+ if (result != thrd_success)
+ {+ fprintf(stderr, "error joining thread\n");
+ exit(1);
+ }
+#else
if (result)
{fprintf(stderr, "%s\n", strerror(result));
exit(1);
}
+#endif
#endif
if (analysis->info[i].score > analysis->score)
--
⑨