nsIURIKey key(aURI); mScriptTable.Put(&key, aScriptObject);
NS_ENSURE_TRUE(mScriptTable.Put(aURI, aScriptObject), NS_ERROR_OUT_OF_MEMORY);
nsXULPrototypeCache::PutScript(nsIURI* aURI, void* aScriptObject){    nsIURIKey key(aURI);    mScriptTable.Put(&key, aScriptObject);    // Lock the object from being gc'd until it is removed from the cache    JS_LockGCThingRT(GetJSRuntime(), aScriptObject);    return NS_OK;}