Fix for #1890 and #1959
This bug happens under Windows & Embedded server Reason is that pthread_self() always returns NULL in this case. This confuses thr_lock function and it doesn't stop thread inserting in the write-locked table. Global problem is that there's no way under Windows to get unique thread handle for working thread. Monty made a workaround for server - we store the thread's handle we get when we create thread in the thread-specific variable. This doesn't work with the embedded library for we don't control thread creation there. I added code that sets CurrentThreadId as the pthread_self for the embedded library. It seems to solve problem because it's unique and we don't use pthread_self as a parameter for thread functions in embedded library.
Showing
Please register or sign in to comment