Bug 1153267 - part 1 - use smart-pointer .forget() instead of NS_ADDREF+assign; r=ehsan

This commit is contained in:
Nathan Froyd 2015-03-31 10:03:49 -04:00
parent 5a841d9928
commit b5966ed356
47 changed files with 109 additions and 122 deletions

View File

@ -150,7 +150,7 @@ ContentPermissionType::GetOptions(nsIArray** aOptions)
NS_ENSURE_SUCCESS(rv, rv);
}
NS_ADDREF(*aOptions = options);
options.forget(aOptions);
return NS_OK;
}

View File

@ -83,8 +83,7 @@ SetUpEncoder(nsIDOMNode *aRoot, const nsACString& aCharset,
}
if (NS_SUCCEEDED(rv)) {
*aEncoder = encoder.get();
NS_ADDREF(*aEncoder);
encoder.forget(aEncoder);
}
return rv;

View File

@ -2637,8 +2637,9 @@ nsFocusManager::DetermineElementToMoveFocus(nsPIDOMWindow* aWindow,
// as long as the found node was not the same as the starting node,
// set it as the return value.
if (nextFocus != originalStartContent)
NS_ADDREF(*aNextContent = nextFocus);
if (nextFocus != originalStartContent) {
nextFocus.forget(aNextContent);
}
return NS_OK;
}
@ -3120,8 +3121,7 @@ nsFocusManager::GetLastDocShell(nsIDocShellTreeItem* aItem,
int32_t childCount = 0;
curItem->GetChildCount(&childCount);
if (!childCount) {
*aResult = curItem;
NS_ADDREF(*aResult);
curItem.forget(aResult);
return;
}
@ -3199,7 +3199,7 @@ nsFocusManager::GetPreviousDocShell(nsIDocShellTreeItem* aItem,
if (prevItem)
GetLastDocShell(prevItem, aResult);
else
NS_ADDREF(*aResult = parentItem);
parentItem.forget(aResult);
}
nsIContent*
@ -3417,7 +3417,7 @@ nsFocusManager::GetFocusInSelection(nsPIDOMWindow* aWindow,
nsCOMPtr<nsIURI> uri;
if (testContent == currentFocus ||
testContent->IsLink(getter_AddRefs(uri))) {
NS_ADDREF(*aFocusedContent = testContent);
testContent.forget(aFocusedContent);
return;
}
@ -3447,7 +3447,7 @@ nsFocusManager::GetFocusInSelection(nsPIDOMWindow* aWindow,
nsCOMPtr<nsIURI> uri;
if (testContent == currentFocus ||
testContent->IsLink(getter_AddRefs(uri))) {
NS_ADDREF(*aFocusedContent = testContent);
testContent.forget(aFocusedContent);
return;
}

View File

@ -4048,7 +4048,7 @@ nsGlobalWindow::GetPrompter(nsIPrompt** aPrompt)
nsCOMPtr<nsIPrompt> prompter(do_GetInterface(mDocShell));
NS_ENSURE_TRUE(prompter, NS_ERROR_NO_INTERFACE);
NS_ADDREF(*aPrompt = prompter);
prompter.forget(aPrompt);
return NS_OK;
}

View File

@ -631,8 +631,7 @@ nsSelectionCommand::GetContentViewerEditFromContext(nsISupports *aContext,
nsCOMPtr<nsIContentViewerEdit> edit(do_QueryInterface(viewer));
NS_ENSURE_TRUE(edit, NS_ERROR_FAILURE);
*aEditInterface = edit;
NS_ADDREF(*aEditInterface);
edit.forget(aEditInterface);
return NS_OK;
}

View File

@ -1808,7 +1808,7 @@ nsRange::CutContents(DocumentFragment** aFragment)
// There's nothing for us to delete.
rv = CollapseRangeAfterDelete(this);
if (NS_SUCCEEDED(rv) && aFragment) {
NS_ADDREF(*aFragment = retval);
retval.forget(aFragment);
}
return rv;
}
@ -2015,7 +2015,7 @@ nsRange::CutContents(DocumentFragment** aFragment)
rv = CollapseRangeAfterDelete(this);
if (NS_SUCCEEDED(rv) && aFragment) {
NS_ADDREF(*aFragment = retval);
retval.forget(aFragment);
}
return rv;
}

View File

@ -1104,8 +1104,7 @@ DataStoreService::GetAppManifestURLsForDataStore(const nsAString& aName,
apps->EnumerateRead(GetAppManifestURLsEnumerator, manifestURLs.get());
}
*aManifestURLs = manifestURLs;
NS_ADDREF(*aManifestURLs);
manifestURLs.forget(aManifestURLs);
return NS_OK;
}

View File

@ -3515,7 +3515,7 @@ nsDOMDeviceStorage::CreateDeviceStorageFor(nsPIDOMWindow* aWin,
*aStore = nullptr;
return;
}
NS_ADDREF(*aStore = ds.get());
ds.forget(aStore);
}
// static

View File

@ -982,7 +982,7 @@ DataTransfer::ConvertFromVariant(nsIVariant* aVariant,
if (fdp) {
// for flavour data providers, use kFlavorHasDataProvider (which has the
// value 0) as the length.
NS_ADDREF(*aSupports = fdp);
fdp.forget(aSupports);
*aLength = nsITransferable::kFlavorHasDataProvider;
}
else {
@ -993,7 +993,7 @@ DataTransfer::ConvertFromVariant(nsIVariant* aVariant,
return false;
ptrSupports->SetData(data);
NS_ADDREF(*aSupports = ptrSupports);
ptrSupports.forget(aSupports);
*aLength = sizeof(nsISupportsInterfacePointer *);
}
@ -1017,8 +1017,7 @@ DataTransfer::ConvertFromVariant(nsIVariant* aVariant,
strSupports->SetData(str);
*aSupports = strSupports;
NS_ADDREF(*aSupports);
strSupports.forget(aSupports);
// each character is two bytes
*aLength = str.Length() << 1;

View File

@ -1743,8 +1743,7 @@ HTMLFormElement::GetActionURL(nsIURI** aActionURL,
//
// Assign to the output
//
*aActionURL = actionURL;
NS_ADDREF(*aActionURL);
actionURL.forget(aActionURL);
return rv;
}

View File

@ -2247,7 +2247,7 @@ QuotaManager::EnsureOriginIsInitialized(PersistenceType aPersistenceType,
if (IsTreatedAsPersistent(aPersistenceType, aIsApp)) {
if (mInitializedOrigins.Contains(OriginKey(aPersistenceType, aOrigin))) {
NS_ADDREF(*aDirectory = directory);
directory.forget(aDirectory);
return NS_OK;
}
} else if (!mTemporaryStorageInitialized) {

View File

@ -239,7 +239,7 @@ nsVolumeService::GetVolumeNames(nsIArray** aVolNames)
NS_ENSURE_SUCCESS(rv, rv);
}
NS_ADDREF(*aVolNames = volNames);
volNames.forget(aVolNames);
return NS_OK;
}

View File

@ -2041,8 +2041,7 @@ XULDocument::PrepareToLoadPrototype(nsIURI* aURI, const char* aCommand,
kCharsetFromDocTypeDefault);
parser->SetContentSink(sink); // grabs a reference to the parser
*aResult = parser;
NS_ADDREF(*aResult);
parser.forget(aResult);
return NS_OK;
}
@ -3661,7 +3660,7 @@ XULDocument::CreateOverlayElement(nsXULPrototypeElement* aPrototype,
rv = AddForwardReference(fwdref);
if (NS_FAILED(rv)) return rv;
NS_ADDREF(*aResult = element);
element.forget(aResult);
return NS_OK;
}

View File

@ -107,8 +107,7 @@ nsXULControllers::GetControllerForCommand(const char *aCommand, nsIController**
bool supportsCommand;
controller->SupportsCommand(aCommand, &supportsCommand);
if (supportsCommand) {
*_retval = controller;
NS_ADDREF(*_retval);
controller.forget(_retval);
return NS_OK;
}
}

View File

@ -372,7 +372,7 @@ nsXULPrototypeCache::GetInputStream(nsIURI* uri, nsIObjectInputStream** stream)
mInputStreamTable.Put(uri, ois);
NS_ADDREF(*stream = ois);
ois.forget(stream);
return NS_OK;
}
@ -402,7 +402,7 @@ nsXULPrototypeCache::GetOutputStream(nsIURI* uri, nsIObjectOutputStream** stream
NS_ENSURE_SUCCESS(rv, rv);
mOutputStreamTable.Put(uri, storageStream);
}
NS_ADDREF(*stream = objectOutput);
objectOutput.forget(stream);
return NS_OK;
}

View File

@ -1250,8 +1250,7 @@ nsXULContentBuilder::EnsureElementHasGenericChild(nsIContent* parent,
if (NS_FAILED(rv))
return rv;
*result = element;
NS_ADDREF(*result);
element.forget(result);
return NS_ELEMENT_GOT_CREATED;
}
else {

View File

@ -425,8 +425,7 @@ nsXULTemplateQueryProcessorRDF::CompileQuery(nsIXULTemplateBuilder* aBuilder,
mQueries.AppendElement(query);
*_retval = query;
NS_ADDREF(*_retval);
query.forget(_retval);
return NS_OK;
}

View File

@ -240,7 +240,7 @@ nsXULTemplateQueryProcessorStorage::GetDatasource(nsIArray* aDataSources,
return rv;
}
NS_ADDREF(*aReturn = connection);
connection.forget(aReturn);
return NS_OK;
}

View File

@ -285,8 +285,7 @@ nsXULTemplateQueryProcessorXML::CompileQuery(nsIXULTemplateBuilder* aBuilder,
}
}
*_retval = query;
NS_ADDREF(*_retval);
query.forget(_retval);
return NS_OK;
}

View File

@ -76,8 +76,7 @@ nsXULTemplateResultSetRDF::GetNext(nsISupports **aResult)
mCheckedNext = false;
*aResult = nextresult;
NS_ADDREF(*aResult);
nextresult.forget(aResult);
return NS_OK;
}

View File

@ -2672,8 +2672,7 @@ nsFrame::GetDataForTableSelection(const nsFrameSelection* aFrameSelection,
if (offset < 0) return NS_ERROR_FAILURE;
// Everything is OK -- set the return values
*aParentContent = parentContent;
NS_ADDREF(*aParentContent);
parentContent.forget(aParentContent);
*aContentOffset = offset;

View File

@ -234,8 +234,7 @@ inDOMUtils::GetCSSStyleRules(nsIDOMElement *aElement,
}
}
*_retval = rules;
NS_ADDREF(*_retval);
rules.forget(_retval);
return NS_OK;
}
@ -902,7 +901,7 @@ inDOMUtils::GetBindingURLs(nsIDOMElement *aElement, nsIArray **_retval)
binding = binding->GetBaseBinding();
}
NS_ADDREF(*_retval = urls);
urls.forget(_retval);
return NS_OK;
}

View File

@ -621,7 +621,7 @@ nsTreeBodyFrame::GetSelectionRegion(nsIScriptableRegion **aRegion)
// clip to the tree boundary in case one row extends past it
region->IntersectRect(x, top, rect.width, rect.height);
NS_ADDREF(*aRegion = region);
region.forget(aRegion);
return NS_OK;
}

View File

@ -850,8 +850,9 @@ NS_NewDownloader(nsIStreamListener **result,
do_CreateInstance(NS_DOWNLOADER_CONTRACTID, &rv);
if (NS_SUCCEEDED(rv)) {
rv = downloader->Init(observer, downloadLocation);
if (NS_SUCCEEDED(rv))
NS_ADDREF(*result = downloader);
if (NS_SUCCEEDED(rv)) {
downloader.forget(result);
}
}
return rv;
}
@ -991,8 +992,9 @@ NS_NewSyncStreamListener(nsIStreamListener **result,
do_CreateInstance(NS_SYNCSTREAMLISTENER_CONTRACTID, &rv);
if (NS_SUCCEEDED(rv)) {
rv = listener->GetInputStream(stream);
if (NS_SUCCEEDED(rv))
NS_ADDREF(*result = listener); // cannot use nsCOMPtr::swap
if (NS_SUCCEEDED(rv)) {
listener.forget(result);
}
}
return rv;
}
@ -1037,8 +1039,9 @@ NS_NewRequestObserverProxy(nsIRequestObserver **result,
do_CreateInstance(NS_REQUESTOBSERVERPROXY_CONTRACTID, &rv);
if (NS_SUCCEEDED(rv)) {
rv = proxy->Init(observer, context);
if (NS_SUCCEEDED(rv))
NS_ADDREF(*result = proxy); // cannot use nsCOMPtr::swap
if (NS_SUCCEEDED(rv)) {
proxy.forget(result);
}
}
return rv;
}
@ -1053,8 +1056,9 @@ NS_NewSimpleStreamListener(nsIStreamListener **result,
do_CreateInstance(NS_SIMPLESTREAMLISTENER_CONTRACTID, &rv);
if (NS_SUCCEEDED(rv)) {
rv = listener->Init(sink, observer);
if (NS_SUCCEEDED(rv))
NS_ADDREF(*result = listener); // cannot use nsCOMPtr::swap
if (NS_SUCCEEDED(rv)) {
listener.forget(result);
}
}
return rv;
}
@ -1434,8 +1438,9 @@ NS_NewBufferedInputStream(nsIInputStream **result,
do_CreateInstance(NS_BUFFEREDINPUTSTREAM_CONTRACTID, &rv);
if (NS_SUCCEEDED(rv)) {
rv = in->Init(str, bufferSize);
if (NS_SUCCEEDED(rv))
NS_ADDREF(*result = in); // cannot use nsCOMPtr::swap
if (NS_SUCCEEDED(rv)) {
in.forget(result);
}
}
return rv;
}
@ -1452,8 +1457,9 @@ NS_NewBufferedOutputStream(nsIOutputStream **result,
do_CreateInstance(NS_BUFFEREDOUTPUTSTREAM_CONTRACTID, &rv);
if (NS_SUCCEEDED(rv)) {
rv = out->Init(str, bufferSize);
if (NS_SUCCEEDED(rv))
NS_ADDREF(*result = out); // cannot use nsCOMPtr::swap
if (NS_SUCCEEDED(rv)) {
out.forget(result);
}
}
return rv;
}
@ -1518,7 +1524,7 @@ NS_NewPostDataStream(nsIInputStream **result,
if (NS_FAILED(rv))
return rv;
NS_ADDREF(*result = stream);
stream.forget(result);
return NS_OK;
}

View File

@ -211,6 +211,6 @@ net_GetFileFromURLSpec(const nsACString &aURL, nsIFile **result)
if (NS_FAILED(rv))
return rv;
NS_ADDREF(*result = localFile);
localFile.forget(result);
return NS_OK;
}

View File

@ -96,6 +96,6 @@ net_GetFileFromURLSpec(const nsACString &aURL, nsIFile **result)
if (NS_FAILED(rv)) return rv;
NS_ADDREF(*result = localFile);
localFile.forget(result);
return NS_OK;
}

View File

@ -112,6 +112,6 @@ net_GetFileFromURLSpec(const nsACString &aURL, nsIFile **result)
if (NS_FAILED(rv)) return rv;
NS_ADDREF(*result = localFile);
localFile.forget(result);
return NS_OK;
}

View File

@ -83,7 +83,7 @@ nsDataChannel::OpenContentStream(bool async, nsIInputStream **result,
SetContentCharset(contentCharset);
mContentLength = contentLen;
NS_ADDREF(*result = bufInStream);
bufInStream.forget(result);
return NS_OK;
}

View File

@ -2068,7 +2068,7 @@ nsHttpConnectionMgr::BuildPipeline(nsConnectionEntry *ent,
nsRefPtr<nsHttpPipeline> pipeline = new nsHttpPipeline();
pipeline->AddTransaction(firstTrans);
NS_ADDREF(*result = pipeline);
pipeline.forget(result);
return NS_OK;
}

View File

@ -271,7 +271,7 @@ nsHttpDigestAuth::GenerateCredentials(nsIHttpAuthenticableChannel *authChannel,
do_CreateInstance(NS_SUPPORTS_PRUINT32_CONTRACTID));
if (v) {
v->SetData(1);
NS_ADDREF(*sessionState = v);
v.forget(sessionState);
}
}
LOG((" nonce_count=%s\n", nonce_count));

View File

@ -250,7 +250,7 @@ BaseWebSocketChannel::NewURI(const nsACString & aSpec, const char *aOriginCharse
aOriginCharset, aBaseURI);
if (NS_FAILED(rv))
return rv;
NS_ADDREF(*_retval = url);
url.forget(_retval);
return NS_OK;
}

View File

@ -78,8 +78,7 @@ nsWyciwygProtocolHandler::NewURI(const nsACString &aSpec,
rv = url->SetSpec(aSpec);
NS_ENSURE_SUCCESS(rv, rv);
*result = url;
NS_ADDREF(*result);
url.forget(result);
return rv;
}

View File

@ -454,9 +454,7 @@ nsStreamConverterService::Convert(nsIInputStream *aFromStream,
}
delete converterChain;
*_retval = convertedData;
NS_ADDREF(*_retval);
convertedData.forget(_retval);
} else {
// we're going direct.
rv = converter->Convert(aFromStream, aFromType, aToType, aContext, _retval);
@ -546,15 +544,11 @@ nsStreamConverterService::AsyncConvertData(const char *aFromType,
}
delete converterChain;
// return the first listener in the chain.
*_retval = finalListener;
NS_ADDREF(*_retval);
finalListener.forget(_retval);
} else {
// we're going direct.
*_retval = listener;
NS_ADDREF(*_retval);
rv = listener->AsyncConvertData(aFromType, aToType, aListener, aContext);
listener.forget(_retval);
}
return rv;

View File

@ -275,7 +275,7 @@ nsCommandLine::ResolveFile(const nsAString& aArgument, nsIFile* *aResult)
CFRelease(newurl);
if (NS_FAILED(rv)) return rv;
NS_ADDREF(*aResult = newfile);
newfile.forget(aResult);
return NS_OK;
#elif defined(XP_UNIX)
@ -306,7 +306,7 @@ nsCommandLine::ResolveFile(const nsAString& aArgument, nsIFile* *aResult)
rv = lf->Normalize();
if (NS_FAILED(rv)) return rv;
NS_ADDREF(*aResult = lf);
lf.forget(aResult);
return NS_OK;
#elif defined(XP_WIN32)
@ -333,7 +333,7 @@ nsCommandLine::ResolveFile(const nsAString& aArgument, nsIFile* *aResult)
rv = lf->InitWithPath(nsDependentString(pathBuf));
if (NS_FAILED(rv)) return rv;
}
NS_ADDREF(*aResult = lf);
lf.forget(aResult);
return NS_OK;
#else

View File

@ -1280,7 +1280,7 @@ nsDownloadManager::GetDownloadFromDB(mozIStorageConnection* aDBConn,
}
// Addrefing and returning
NS_ADDREF(*retVal = dl);
dl.forget(retVal);
return NS_OK;
}
@ -1675,7 +1675,7 @@ nsDownloadManager::AddDownload(DownloadType aDownloadType,
}
}
NS_ADDREF(*aDownload = dl);
dl.forget(aDownload);
return NS_OK;
}

View File

@ -562,7 +562,7 @@ nsFileView::GetSelectedFiles(nsIArray** aFiles)
}
}
NS_ADDREF(*aFiles = fileArray);
fileArray.forget(aFiles);
return NS_OK;
}

View File

@ -716,7 +716,7 @@ namespace places {
else {
result->SetAsAString(EmptyString());
}
NS_ADDREF(*_result = result);
result.forget(_result);
return NS_OK;
}
@ -771,7 +771,7 @@ namespace places {
}
result->SetAsAString(src);
NS_ADDREF(*_result = result);
result.forget(_result);
return NS_OK;
}
@ -833,7 +833,7 @@ namespace places {
NS_ENSURE_STATE(result);
rv = result->SetAsInt32(newFrecency);
NS_ENSURE_SUCCESS(rv, rv);
NS_ADDREF(*_result = result);
result.forget(_result);
return NS_OK;
}

View File

@ -667,8 +667,9 @@ nsAnnotationService::GetPageAnnotation(nsIURI* aURI,
}
}
if (NS_SUCCEEDED(rv))
NS_ADDREF(*_retval = value);
if (NS_SUCCEEDED(rv)) {
value.forget(_retval);
}
return rv;
}
@ -711,8 +712,9 @@ nsAnnotationService::GetItemAnnotation(int64_t aItemId,
}
}
if (NS_SUCCEEDED(rv))
NS_ADDREF(*_retval = value);
if (NS_SUCCEEDED(rv)) {
value.forget(_retval);
}
return rv;
}

View File

@ -282,7 +282,7 @@ nsNavHistory::QueryStringToQueries(const nsACString& aQueryString,
NS_ADDREF((*aQueries)[i]);
}
}
NS_ADDREF(*aOptions = options);
options.forget(aOptions);
return NS_OK;
}
@ -316,7 +316,7 @@ nsNavHistory::QueryStringToQueryArray(const nsACString& aQueryString,
return rv;
}
NS_ADDREF(*aOptions = options);
options.forget(aOptions);
return NS_OK;
}
@ -1163,7 +1163,7 @@ NS_IMETHODIMP nsNavHistoryQuery::GetTags(nsIVariant **aTags)
}
NS_ENSURE_SUCCESS(rv, rv);
NS_ADDREF(*aTags = out);
out.forget(aTags);
return NS_OK;
}

View File

@ -819,11 +819,8 @@ nsTypeAheadFind::GetSearchContainers(nsISupports *aContainer,
mStartPointRange->Collapse(true); // collapse to start
*aPresShell = presShell;
NS_ADDREF(*aPresShell);
*aPresContext = presContext;
NS_ADDREF(*aPresContext);
presShell.forget(aPresShell);
presContext.forget(aPresContext);
return NS_OK;
}

View File

@ -46,8 +46,9 @@ NS_NewCheckSummedOutputStream(nsIOutputStream **result,
{
nsCOMPtr<nsIFileOutputStream> out = new nsCheckSummedOutputStream();
nsresult rv = out->Init(file, ioFlags, perm, behaviorFlags);
if (NS_SUCCEEDED(rv))
NS_ADDREF(*result = out); // cannot use nsCOMPtr::swap
if (NS_SUCCEEDED(rv)) {
out.forget(result);
}
return rv;
}

View File

@ -676,7 +676,7 @@ NS_LockProfilePath(nsIFile* aPath, nsIFile* aTempPath,
nsresult rv = lock->Init(aPath, aTempPath, aUnlocker);
if (NS_FAILED(rv)) return rv;
NS_ADDREF(*aResult = lock);
lock.forget(aResult);
return NS_OK;
}
@ -904,7 +904,7 @@ nsToolkitProfileService::CreateProfileInternal(nsIFile* aRootDir,
new nsToolkitProfile(aName, rootDir, localDir, last, aForExternalApp);
if (!profile) return NS_ERROR_OUT_OF_MEMORY;
NS_ADDREF(*aResult = profile);
profile.forget(aResult);
return NS_OK;
}
@ -1108,8 +1108,9 @@ XRE_GetFileFromPath(const char *aPath, nsIFile* *aResult)
nsCOMPtr<nsILocalFileMac> lfMac = do_QueryInterface(lf, &rv);
if (NS_SUCCEEDED(rv)) {
rv = lfMac->InitWithCFURL(fullPath);
if (NS_SUCCEEDED(rv))
NS_ADDREF(*aResult = lf);
if (NS_SUCCEEDED(rv)) {
lf.forget(aResult);
}
}
}
CFRelease(fullPath);

View File

@ -190,7 +190,7 @@ nsGConfService::GetStringList(const nsACString &aKey, nsIArray** aResult)
}
g_slist_free(list);
NS_ADDREF(*aResult = items);
items.forget(aResult);
return NS_OK;
}

View File

@ -142,7 +142,7 @@ nsGIOMimeApp::GetSupportedURISchemes(nsIUTF8StringEnumerator** aSchemes)
uri_schemes++;
}
NS_ADDREF(*aSchemes = array);
array.forget(aSchemes);
return NS_OK;
}

View File

@ -272,7 +272,7 @@ nsGSettingsCollection::GetStringList(const nsACString& aKey, nsIArray** aResult)
const gchar ** gs_strings = g_variant_get_strv(value, nullptr);
if (!gs_strings) {
// empty array
NS_ADDREF(*aResult = items);
items.forget(aResult);
g_variant_unref(value);
return NS_OK;
}
@ -288,7 +288,7 @@ nsGSettingsCollection::GetStringList(const nsACString& aKey, nsIArray** aResult)
p_gs_strings++;
}
g_free(gs_strings);
NS_ADDREF(*aResult = items);
items.forget(aResult);
g_variant_unref(value);
return NS_OK;
}

View File

@ -194,7 +194,7 @@ GetXULRunnerStubPath(const char* argv0, nsIFile* *aResult)
if (NS_FAILED(rv))
return rv;
NS_ADDREF(*aResult = static_cast<nsIFile*>(lfm.get()));
lfm.forget(aResult);
return NS_OK;
}
#endif /* XP_MACOSX */

View File

@ -393,7 +393,7 @@ nsXREDirProvider::GetFile(const char* aProperty, bool* aPersistent,
}
if (NS_SUCCEEDED(rv) && file) {
NS_ADDREF(*aFile = file);
file.forget(aFile);
return NS_OK;
}
@ -459,7 +459,7 @@ nsXREDirProvider::GetFile(const char* aProperty, bool* aPersistent,
}
}
NS_ADDREF(*aFile = file);
file.forget(aFile);
return NS_OK;
}
@ -525,7 +525,7 @@ nsXREDirProvider::GetFiles(const char* aProperty, nsISimpleEnumerator** aResult)
appEnum = nullptr;
}
else if (rv != NS_SUCCESS_AGGREGATE_RESULT) {
NS_ADDREF(*aResult = appEnum);
appEnum.forget(aResult);
return NS_OK;
}
}
@ -534,7 +534,7 @@ nsXREDirProvider::GetFiles(const char* aProperty, nsISimpleEnumerator** aResult)
rv = GetFilesInternal(aProperty, getter_AddRefs(xreEnum));
if (NS_FAILED(rv)) {
if (appEnum) {
NS_ADDREF(*aResult = appEnum);
appEnum.forget(aResult);
return NS_SUCCESS_AGGREGATE_RESULT;
}
@ -1068,7 +1068,7 @@ nsXREDirProvider::GetUpdateRootDir(nsIFile* *aResult)
return NS_ERROR_FAILURE;
}
NS_ADDREF(*aResult = localDir);
NS_localDir.forget(aResult);
return NS_OK;
#elif XP_WIN
@ -1109,7 +1109,7 @@ nsXREDirProvider::GetUpdateRootDir(nsIFile* *aResult)
gAppData->vendor : gAppData->name))) &&
NS_SUCCEEDED(localDir->Append(NS_LITERAL_STRING("updates"))) &&
NS_SUCCEEDED(localDir->Append(pathHash))) {
NS_ADDREF(*aResult = localDir);
localDir.forget(aResult);
return NS_OK;
}
@ -1162,7 +1162,7 @@ nsXREDirProvider::GetUpdateRootDir(nsIFile* *aResult)
#endif // XP_WIN
#endif
NS_ADDREF(*aResult = updRoot);
updRoot.forget(aResult);
return NS_OK;
}
@ -1306,7 +1306,7 @@ nsXREDirProvider::GetSysUserExtensionsDirectory(nsIFile** aFile)
rv = EnsureDirectoryExists(localDir);
NS_ENSURE_SUCCESS(rv, rv);
NS_ADDREF(*aFile = localDir);
localDir.forget(aFile);
return NS_OK;
}
@ -1354,7 +1354,7 @@ nsXREDirProvider::GetSystemExtensionsDirectory(nsIFile** aFile)
NS_ENSURE_SUCCESS(rv, rv);
#endif
NS_ADDREF(*aFile = localDir);
localDir.forget(aFile);
return NS_OK;
}
#endif
@ -1380,7 +1380,7 @@ nsXREDirProvider::GetUserDataDirectory(nsIFile** aFile, bool aLocal,
rv = EnsureDirectoryExists(localDir);
NS_ENSURE_SUCCESS(rv, rv);
NS_ADDREF(*aFile = localDir);
localDir.forget(aFile);
return NS_OK;
}
@ -1448,7 +1448,7 @@ nsXREDirProvider::GetProfileDefaultsDir(nsIFile* *aResult)
rv = defaultsDir->AppendNative(NS_LITERAL_CSTRING("profile"));
NS_ENSURE_SUCCESS(rv, rv);
NS_ADDREF(*aResult = defaultsDir);
defaultsDir.forget(aResult);
return NS_OK;
}