diff --git a/indra/newview/llsecapi.h b/indra/newview/llsecapi.h
index b65cf37e7fefa6cc74b0052379e8531450d133a1..8e4c2c56c6d50b23830db5de9d987d858ea4226d 100644
--- a/indra/newview/llsecapi.h
+++ b/indra/newview/llsecapi.h
@@ -160,7 +160,7 @@ class LLCertificate : public LLRefCount
 // base class for a list of certificates.
 
 
-class LLCertificateVector : public LLRefCount
+class LLCertificateVector : public LLThreadSafeRefCount
 {
 	
 public:
diff --git a/indra/newview/llsechandler_basic.cpp b/indra/newview/llsechandler_basic.cpp
index 90e8ff0aae0702cba6a4f34312dea17e97dcf174..904bb03270065573852bd41c975cc1d3241ba4b7 100644
--- a/indra/newview/llsechandler_basic.cpp
+++ b/indra/newview/llsechandler_basic.cpp
@@ -1209,12 +1209,12 @@ void LLSecAPIBasicHandler::init()
 		// with the product
 		std::string ca_file_path = gDirUtilp->getExpandedFilename(LL_PATH_APP_SETTINGS, "CA.pem");
 		llinfos << "app path " << ca_file_path << llendl;
-		LLBasicCertificateStore app_ca_store = LLBasicCertificateStore(ca_file_path);	
+		LLPointer<LLBasicCertificateStore> app_ca_store = new LLBasicCertificateStore(ca_file_path);
 		
 		// push the applicate CA files into the store, therefore adding any new CA certs that 
 		// updated
-		for(LLCertificateVector::iterator i = app_ca_store.begin();
-			i != app_ca_store.end();
+		for(LLCertificateVector::iterator i = app_ca_store->begin();
+			i != app_ca_store->end();
 			i++)
 		{
 			mStore->add(*i);