Better fix for pthread ID comparison crap on windows.

Suggested by Sergey, thanks!
This commit is contained in:
Bastien Montagne 2015-11-02 19:25:00 +01:00
parent d2fbbed462
commit d0d523d809
1 changed files with 2 additions and 4 deletions

View File

@ -347,17 +347,15 @@ static TaskPool *task_pool_create_ex(TaskScheduler *scheduler, void *userdata, c
TaskPool *pool = MEM_callocN(sizeof(TaskPool), "TaskPool");
#ifndef NDEBUG
# ifndef WIN32 /* WIN32 pthread_t seems to ba a struct, no direct comparison available, *sigh* */
/* Assert we do not try to create a background pool from some parent task - those only work OK from main thread. */
if (is_background) {
const pthread_t thread_id = pthread_self();
int i = scheduler->num_threads;
int i = scheduler->num_threads;
while (i--) {
BLI_assert(scheduler->threads[i] != thread_id);
BLI_assert(!pthread_equal(scheduler->threads[i], thread_id));
}
}
# endif
#endif
pool->scheduler = scheduler;