Index: src/OFObject.m ================================================================== --- src/OFObject.m +++ src/OFObject.m @@ -974,11 +974,11 @@ #if defined(OF_ATOMIC_OPS) of_atomic_inc_32(&PRE_IVARS->retainCount); #elif defined(OF_THREADS) OF_ENSURE(of_spinlock_lock(&PRE_IVARS->retainCountSpinlock)); PRE_IVARS->retainCount++; - OF_ENSURE(of_spinlock_unlock(&PRE_IVARS->retainCountSspinlock)); + OF_ENSURE(of_spinlock_unlock(&PRE_IVARS->retainCountSpinlock)); #else PRE_IVARS->retainCount++; #endif return self; Index: src/OFThreadPool.m ================================================================== --- src/OFThreadPool.m +++ src/OFThreadPool.m @@ -329,11 +329,13 @@ [super dealloc]; } - (void)OF_dispatchJob: (OFThreadPoolJob*)job { - of_atomic_inc_int(&count); + [countCondition lock]; + count++; + [countCondition unlock]; [queueCondition lock]; @try { [queue appendObject: job]; [queueCondition signal];