incorrect use of thread conditions leads to race conditions
ASK QUESTIONS IN Forums:
joblist_queue_thread uses g_cond_wait incorrectly. The mutex must be locked before the call; otherwise, it does nothing and the mutex is never locked. This may not be tripping errors because slower error-checking mutexes aren't being used; having debug builds compile with G_ERRORCHECK_MUTEXES enabled may help expose problems like this (havn't tested).
This fixes problems with connections getting stuck in an inconsistent state, with in_joblist set but not actually in either joblist, effectively leaking the connection and its fds permanently.
Updated by stbuehler almost 14 years ago
- Status changed from Patch Pending to Fixed
- % Done changed from 0 to 100
Applied in changeset r2539.
Also available in: Atom