Stop mishandling the type number in dynlock locking

This commit is contained in:
Richard Levitte 2001-06-01 15:21:01 +00:00
parent 31bc51c8cf
commit a87f50fb5a

View File

@ -397,16 +397,15 @@ void CRYPTO_lock(int mode, int type, const char *file, int line)
#endif #endif
if (type < 0) if (type < 0)
{ {
int i = -type - 1;
struct CRYPTO_dynlock_value *pointer struct CRYPTO_dynlock_value *pointer
= CRYPTO_get_dynlock_value(i); = CRYPTO_get_dynlock_value(type);
if (pointer && dynlock_lock_callback) if (pointer && dynlock_lock_callback)
{ {
dynlock_lock_callback(mode, pointer, file, line); dynlock_lock_callback(mode, pointer, file, line);
} }
CRYPTO_destroy_dynlockid(i); CRYPTO_destroy_dynlockid(type);
} }
else else
if (locking_callback != NULL) if (locking_callback != NULL)