Implement strict validation of thread IDs according to the specification (#2521)
This commit is contained in:
@ -65,7 +65,7 @@ main(int argc, char **argv)
|
||||
assert(start_args_init(&data[i].base));
|
||||
thread_ids[i] = __wasi_thread_spawn(&data[i]);
|
||||
printf("Thread created with id=%d\n", thread_ids[i]);
|
||||
assert(thread_ids[i] > 0 && "Thread creation failed");
|
||||
ASSERT_VALID_TID(thread_ids[i]);
|
||||
|
||||
for (int j = 0; j < i; j++) {
|
||||
assert(thread_ids[i] != thread_ids[j] && "Duplicated TIDs");
|
||||
|
||||
@ -49,7 +49,7 @@ main(int argc, char **argv)
|
||||
for (int i = 0; i < NUM_THREADS; i++) {
|
||||
assert(start_args_init(&data[i].base));
|
||||
thread_ids[i] = __wasi_thread_spawn(&data[i]);
|
||||
assert(thread_ids[i] > 0 && "Thread creation failed");
|
||||
ASSERT_VALID_TID(thread_ids[i]);
|
||||
}
|
||||
|
||||
printf("Wait for threads to finish\n");
|
||||
|
||||
@ -61,7 +61,7 @@ main(int argc, char **argv)
|
||||
for (int i = 0; i < NUM_THREADS; i++) {
|
||||
assert(start_args_init(&data[i].base));
|
||||
thread_ids[i] = __wasi_thread_spawn(&data[i]);
|
||||
assert(thread_ids[i] > 0 && "Thread creation failed");
|
||||
ASSERT_VALID_TID(thread_ids[i]);
|
||||
}
|
||||
|
||||
printf("Wait for threads to finish\n");
|
||||
|
||||
@ -38,7 +38,7 @@ main(int argc, char **argv)
|
||||
|
||||
assert(start_args_init(&data.base));
|
||||
int thread_id = __wasi_thread_spawn(&data);
|
||||
assert(thread_id > 0 && "Thread creation failed");
|
||||
ASSERT_VALID_TID(thread_id);
|
||||
|
||||
return EXIT_SUCCESS;
|
||||
}
|
||||
|
||||
@ -69,7 +69,7 @@ main(int argc, char **argv)
|
||||
data[i].iteration = i;
|
||||
|
||||
thread_ids[i] = __wasi_thread_spawn(&data[i]);
|
||||
assert(thread_ids[i] > 0 && "Thread creation failed");
|
||||
ASSERT_VALID_TID(thread_ids[i]);
|
||||
}
|
||||
|
||||
printf("Wait for threads to finish\n");
|
||||
|
||||
Reference in New Issue
Block a user