gecko-dev/xpcom/io
Gijs Kruitbosch 10013b939f Bug 1575566 - stop using the directory service when creating anonymous temporary files, r=froydnj
Note that this code asserts it gets run in the parent process, so we can be sure that we never
want the content process sandbox-accessible dir or similar (though tbf, that seems odd given
we have DOM machinery to proxy from the child to here... but that's what happens today).

This will start using the actual temp dir even in the case of e.g. xpcshell, which normally
dependency-injects a different (also temp) dir and reuses it as the profile as well as temp
dir ( https://searchfox.org/mozilla-central/rev/03853a6e87c4a9405fce1de49e5d03b9e7a7a274/testing/xpcshell/head.js#1207-1226 )
if and only if anything calls do_get_profile .

I think this is likely OK... but if not, we'll have to come up with a more complicated
solution...

Differential Revision: https://phabricator.services.mozilla.com/D42950

--HG--
extra : moz-landing-system : lando
2019-08-23 14:00:27 +00:00
..
Base64.cpp
Base64.h
CocoaFileUtils.h
CocoaFileUtils.mm
components.conf
crc32c.c
crc32c.h
FileDescriptorFile.cpp
FileDescriptorFile.h
FilePreferences.cpp
FilePreferences.h
FileUtilsWin.cpp
FileUtilsWin.h
InputStreamLengthHelper.cpp
InputStreamLengthHelper.h
InputStreamLengthWrapper.cpp
InputStreamLengthWrapper.h
moz.build
NonBlockingAsyncInputStream.cpp
NonBlockingAsyncInputStream.h
nsAnonymousTemporaryFile.cpp
nsAnonymousTemporaryFile.h
nsAppDirectoryServiceDefs.h
nsAppFileLocationProvider.cpp
nsAppFileLocationProvider.h
nsBinaryStream.cpp
nsBinaryStream.h
nsDirectoryService.cpp
nsDirectoryService.h
nsDirectoryServiceDefs.h
nsDirectoryServiceUtils.h
nsEscape.cpp
nsEscape.h
nsIAsyncInputStream.idl
nsIAsyncOutputStream.idl
nsIBinaryInputStream.idl
nsIBinaryOutputStream.idl
nsICloneableInputStream.idl
nsIConverterInputStream.idl
nsIConverterOutputStream.idl
nsIDirectoryEnumerator.idl
nsIDirectoryService.idl
nsIFile.idl
nsIInputStream.idl
nsIInputStreamLength.idl
nsIInputStreamTee.idl
nsIIOUtil.idl
nsILineInputStream.idl
nsILocalFileMac.idl
nsILocalFileWin.idl
nsIMultiplexInputStream.idl
nsInputStreamTee.cpp
nsIObjectInputStream.idl
nsIObjectOutputStream.idl
nsIOUtil.cpp
nsIOUtil.h
nsIOutputStream.idl
nsIPipe.idl
nsISafeOutputStream.idl
nsIScriptableBase64Encoder.idl
nsIScriptableInputStream.idl
nsISeekableStream.idl
nsIStorageStream.idl
nsIStreamBufferAccess.idl
nsIStringStream.idl
nsITellableStream.idl
nsIUnicharInputStream.idl
nsIUnicharLineInputStream.idl
nsIUnicharOutputStream.idl
nsLinebreakConverter.cpp
nsLinebreakConverter.h
nsLocalFile.h
nsLocalFileCommon.cpp
nsLocalFileCommon.h
nsLocalFileUnix.cpp
nsLocalFileUnix.h
nsLocalFileWin.cpp
nsLocalFileWin.h
nsMultiplexInputStream.cpp
nsMultiplexInputStream.h
nsNativeCharsetUtils.cpp
nsNativeCharsetUtils.h
nsPipe3.cpp
nsPipe.h
nsScriptableBase64Encoder.cpp
nsScriptableBase64Encoder.h
nsScriptableInputStream.cpp
nsScriptableInputStream.h
nsSegmentedBuffer.cpp
nsSegmentedBuffer.h
nsStorageStream.cpp
nsStorageStream.h
nsStreamUtils.cpp
nsStreamUtils.h
nsStringStream.cpp
nsStringStream.h
nsUnicharInputStream.cpp
nsUnicharInputStream.h
nsWildCard.cpp
nsWildCard.h
SlicedInputStream.cpp
SlicedInputStream.h
SnappyCompressOutputStream.cpp
SnappyCompressOutputStream.h
SnappyFrameUtils.cpp
SnappyFrameUtils.h
SnappyUncompressInputStream.cpp
SnappyUncompressInputStream.h
SpecialSystemDirectory.cpp
SpecialSystemDirectory.h