Closed
Bug 753656
Opened 12 years ago
Closed 12 years ago
PSM reads prefs off the main thread
Categories
(Core :: Security: PSM, defect)
Core
Security: PSM
Tracking
()
RESOLVED
DUPLICATE
of bug 624514
People
(Reporter: khuey, Unassigned)
References
Details
The prefs service isn't actually threadsafe, so this is a problem. With a patch I have to make using the pref service off the main thread fatal I get:
ntdll.dll!_ZwRaiseException@12() + 0x12 bytes
ntdll.dll!_ZwRaiseException@12() + 0x12 bytes
msvcr100d.dll!___lock_fhandle() + 0xe1 bytes
xul.dll!nsCOMPtr<nsISupports>::nsCOMPtr<nsISupports>(const nsCOMPtr<nsISupports> & aSmartPtr) Line 882 C++
xul.dll!nsComponentManagerImpl::GetServiceByContractID(const char * aContractID, const nsID & aIID, void * * result) Line 1409 C++
xul.dll!CallGetService(const char * aContractID, const nsID & aIID, void * * aResult) Line 95 C++
xul.dll!nsGetServiceByContractID::operator()(const nsID & aIID, void * * aInstancePtr) Line 278 + 0xc bytes C++
xul.dll!nsCOMPtr<nsIPrefBranch>::assign_from_gs_contractid(nsGetServiceByContractID gs, const nsID & aIID) Line 1212 + 0x12 bytes C++
> xul.dll!nsNSSCertificateDB::GetIsOcspOn(bool * aOcspOn) Line 1399 C++
xul.dll!nsNSSCertificate::hasValidEVOidTag(SECOidTag & resultOidTag, bool & validEV) Line 1152 C++
xul.dll!nsNSSCertificate::getValidEVOidTag(SECOidTag & resultOidTag, bool & validEV) Line 1258 C++
xul.dll!nsNSSCertificate::GetIsExtendedValidation(bool * aIsEV) Line 1283 + 0xd bytes C++
xul.dll!mozilla::psm::`anonymous namespace'::AuthCertificate(mozilla::psm::TransportSecurityInfo * infoObject, CERTCertificateStr * cert) Line 914 C++
xul.dll!mozilla::psm::`anonymous namespace'::SSLServerCertVerificationJob::Run() Line 1040 + 0xb bytes C++
xul.dll!nsThreadPool::Run() Line 219 C++
xul.dll!nsThread::ProcessNextEvent(bool mayWait, bool * result) Line 656 + 0xe bytes C++
xul.dll!NS_ProcessNextEvent_P(nsIThread * thread, bool mayWait) Line 245 + 0xd bytes C++
xul.dll!nsThread::ThreadFunc(void * arg) Line 289 + 0x8 bytes C++
nspr4.dll!_PR_NativeRunThread(void * arg) Line 426 + 0x9 bytes C
nspr4.dll!pr_root(void * arg) Line 122 + 0xd bytes C
msvcr100d.dll!__beginthreadex() + 0x243 bytes
Reporter | ||
Comment 1•12 years ago
|
||
Actually, looks like this is a dupe.
Status: NEW → RESOLVED
Closed: 12 years ago
Resolution: --- → DUPLICATE
You need to log in
before you can comment on or make changes to this bug.
Description
•