void BlobImplBase::GetMozFullPath(nsAString& aFileName, ErrorResult& aRv) const { NS_ASSERTION(mIsFile, "Should only be called on files"); aFileName.Truncate(); if (NS_IsMainThread()) { if (nsContentUtils::LegacyIsCallerChromeOrNativeCode()) { GetMozFullPathInternal(aFileName, aRv); } return; } WorkerPrivate* workerPrivate = GetCurrentThreadWorkerPrivate(); MOZ_ASSERT(workerPrivate); if (workerPrivate->UsesSystemPrincipal()) { GetMozFullPathInternal(aFileName, aRv); } }
nsresult DOMFileImplBase::GetMozFullPath(nsAString &aFileName) { NS_ASSERTION(mIsFile, "Should only be called on files"); // It is unsafe to call IsCallerChrome on a non-main thread. If // you hit the following assertion you need to figure out some other way to // determine privileges and call GetMozFullPathInternal. NS_ASSERTION(NS_IsMainThread(), "Wrong thread!"); if (nsContentUtils::IsCallerChrome()) { return GetMozFullPathInternal(aFileName); } aFileName.Truncate(); return NS_OK; }