From: Seija Kijin Date: Tue, 3 Jan 2023 16:20:19 +0000 (+0000) Subject: win32: close handles of threads that have been joined X-Git-Tag: v2.40.0-rc0~60^2 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=238a9dfe86d18214bc0b8be079feee01a2fdc407;p=thirdparty%2Fgit.git win32: close handles of threads that have been joined After the thread terminates, the handle to the original thread should be closed. This change makes win32_pthread_join POSIX compliant. Signed-off-by: Seija Kijin Signed-off-by: Junio C Hamano --- diff --git a/compat/win32/pthread.c b/compat/win32/pthread.c index cf53bc61d8..85f8f7920c 100644 --- a/compat/win32/pthread.c +++ b/compat/win32/pthread.c @@ -42,10 +42,13 @@ int win32_pthread_join(pthread_t *thread, void **value_ptr) case WAIT_OBJECT_0: if (value_ptr) *value_ptr = thread->arg; + CloseHandle(thread->handle); return 0; case WAIT_ABANDONED: + CloseHandle(thread->handle); return EINVAL; default: + /* the wait failed, so do not detach */ return err_win_to_posix(GetLastError()); } }