-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://codereview.secondlife.com/r/435/
-----------------------------------------------------------
Review request for Viewer and David Parks.
Summary
-------
Fixed a crash caused by a race condition in LLRefCount.
Reason:
secapiSSLCertVerifyCallback() seems to be called simultaneously by multiple
threads,
which causes a race condition in LLRefCount::ref/unref() methods.
The reference counter in LLSecAPIBasicHandler::mStore goes to zero, and the
object gets destroyed.
Fix:
Derive LLCertificateStore from LLThreadSafeRefCount instead of LLRefCount,
which should fix the race condition.
Note:
The LLThreadSafeRefCount constructor is private, so we have to wrap instances
of the class with LLPointer.
This addresses bug STORM-1546.
http://jira.secondlife.com/browse/STORM-1546
Diffs
-----
indra/newview/llsecapi.h 8f15e5a13e8f
indra/newview/llsechandler_basic.cpp 8f15e5a13e8f
Diff: http://codereview.secondlife.com/r/435/diff
Testing
-------
Thanks,
Vadim
_______________________________________________
Policies and (un)subscribe information available here:
http://wiki.secondlife.com/wiki/OpenSource-Dev
Please read the policies before posting to keep unmoderated posting privileges