fix linux comp bug
parent
6908775450
commit
c97e82524e
|
@ -10,18 +10,11 @@
|
||||||
// TOP
|
// TOP
|
||||||
|
|
||||||
internal void
|
internal void
|
||||||
job_proc(System_Functions *system, void *lpParameter){
|
job_proc(System_Functions *system, Thread_Context *thread, Work_Queue *queue, Thread_Group *group, Thread_Memory *thread_memory){
|
||||||
Thread_Context *thread = (Thread_Context*)lpParameter;
|
|
||||||
Work_Queue *queue = win32vars.queues + thread->group_id;
|
|
||||||
Thread_Group *group = win32vars.groups + thread->group_id;
|
|
||||||
|
|
||||||
i32 thread_index = thread->id - 1;
|
i32 thread_index = thread->id - 1;
|
||||||
|
|
||||||
i32 cancel_lock = group->cancel_lock0 + thread_index;
|
i32 cancel_lock = group->cancel_lock0 + thread_index;
|
||||||
i32 cancel_cv = group->cancel_cv0 + thread_index;
|
i32 cancel_cv = group->cancel_cv0 + thread_index;
|
||||||
|
|
||||||
Thread_Memory *thread_memory = win32vars.thread_memory + thread_index;
|
|
||||||
|
|
||||||
if (thread_memory->size == 0){
|
if (thread_memory->size == 0){
|
||||||
i32 new_size = KB(64);
|
i32 new_size = KB(64);
|
||||||
thread_memory->data = system_memory_allocate(new_size);
|
thread_memory->data = system_memory_allocate(new_size);
|
||||||
|
|
|
@ -518,8 +518,12 @@ system_wait_on(Plat_Handle handle){
|
||||||
|
|
||||||
internal void*
|
internal void*
|
||||||
JobThreadProc(void* lpParameter){
|
JobThreadProc(void* lpParameter){
|
||||||
System_Functions *system = &win32vars.system;
|
Thread_Context *thread = (Thread_Context*)lpParameter;
|
||||||
job_proc(system, lpParameter);
|
Work_Queue *queue = linuxvars.queues + thread->group_id;
|
||||||
|
Thread_Group *group = linuxvars.groups + thread->group_id;
|
||||||
|
i32 thread_index = thread->id - 1;
|
||||||
|
Thread_Memory *memory = linuxvars.thread_memory + thread_index;
|
||||||
|
job_proc(&linuxvars.system, thread, queue, group, memory);
|
||||||
InvalidCodePath;
|
InvalidCodePath;
|
||||||
return(0);
|
return(0);
|
||||||
}
|
}
|
||||||
|
|
|
@ -371,8 +371,12 @@ system_wait_on(Plat_Handle handle){
|
||||||
|
|
||||||
internal DWORD CALL_CONVENTION
|
internal DWORD CALL_CONVENTION
|
||||||
JobThreadProc(LPVOID lpParameter){
|
JobThreadProc(LPVOID lpParameter){
|
||||||
System_Functions *system = &win32vars.system;
|
Thread_Context *thread = (Thread_Context*)lpParameter;
|
||||||
job_proc(system, lpParameter);
|
Work_Queue *queue = win32vars.queues + thread->group_id;
|
||||||
|
Thread_Group *group = win32vars.groups + thread->group_id;
|
||||||
|
i32 thread_index = thread->id - 1;
|
||||||
|
Thread_Memory *memory = win32vars.thread_memory + thread_index;
|
||||||
|
job_proc(&win32vars.system, thread, queue, group, memory);
|
||||||
InvalidCodePath;
|
InvalidCodePath;
|
||||||
return(0);
|
return(0);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue