bug 804220 - Make IDBWrapperCache::SetScriptOwner infallible. r=khuey

This commit is contained in:
Andrew McCreight 2012-11-29 14:54:14 -08:00
Родитель 44da20404d
Коммит 0316e404e6
5 изменённых файлов: 6 добавлений и 20 удалений

Просмотреть файл

@ -188,10 +188,7 @@ IDBDatabase::Create(IDBWrapperCache* aOwnerCache,
nsRefPtr<IDBDatabase> db(new IDBDatabase());
db->BindToOwner(aOwnerCache);
if (!db->SetScriptOwner(aOwnerCache->GetScriptOwner())) {
return nullptr;
}
db->SetScriptOwner(aOwnerCache->GetScriptOwner());
db->mFactory = aFactory;
db->mDatabaseId = databaseInfo->id;
db->mName = databaseInfo->name;

Просмотреть файл

@ -57,10 +57,7 @@ IDBRequest::Create(nsISupports* aSource,
request->mSource = aSource;
request->mTransaction = aTransaction;
request->BindToOwner(aOwnerCache);
if (!request->SetScriptOwner(aOwnerCache->GetScriptOwner())) {
return nullptr;
}
request->SetScriptOwner(aOwnerCache->GetScriptOwner());
request->CaptureCaller(aCallingCx);
return request.forget();
@ -352,10 +349,7 @@ IDBOpenDBRequest::Create(IDBFactory* aFactory,
nsRefPtr<IDBOpenDBRequest> request = new IDBOpenDBRequest();
request->BindToOwner(aOwner);
if (!request->SetScriptOwner(aScriptOwner)) {
return nullptr;
}
request->SetScriptOwner(aScriptOwner);
request->CaptureCaller(aCallingCx);
request->mFactory = aFactory;

Просмотреть файл

@ -103,10 +103,7 @@ IDBTransaction::CreateInternal(IDBDatabase* aDatabase,
nsRefPtr<IDBTransaction> transaction = new IDBTransaction();
transaction->BindToOwner(aDatabase);
if (!transaction->SetScriptOwner(aDatabase->GetScriptOwner())) {
return nullptr;
}
transaction->SetScriptOwner(aDatabase->GetScriptOwner());
transaction->mDatabase = aDatabase;
transaction->mMode = aMode;
transaction->mDatabaseInfo = aDatabase->Info();

Просмотреть файл

@ -45,7 +45,7 @@ IDBWrapperCache::~IDBWrapperCache()
NS_DROP_JS_OBJECTS(this, IDBWrapperCache);
}
bool
void
IDBWrapperCache::SetScriptOwner(JSObject* aScriptOwner)
{
NS_ASSERTION(aScriptOwner, "This should never be null!");
@ -56,8 +56,6 @@ IDBWrapperCache::SetScriptOwner(JSObject* aScriptOwner)
nsXPCOMCycleCollectionParticipant* participant;
CallQueryInterface(this, &participant);
nsContentUtils::HoldJSObjects(thisSupports, participant);
return true;
}
#ifdef DEBUG

Просмотреть файл

@ -25,7 +25,7 @@ public:
{
return mScriptOwner;
}
bool SetScriptOwner(JSObject* aScriptOwner);
void SetScriptOwner(JSObject* aScriptOwner);
JSObject* GetParentObject()
{