Tue, 06 Jan 2015 21:39:09 +0100
Conditionally force memory storage according to privacy.thirdparty.isolate;
This solves Tor bug #9701, complying with disk avoidance documented in
https://www.torproject.org/projects/torbrowser/design/#disk-avoidance.
michael@0 | 1 | /* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ |
michael@0 | 2 | /* This Source Code Form is subject to the terms of the Mozilla Public |
michael@0 | 3 | * License, v. 2.0. If a copy of the MPL was not distributed with this |
michael@0 | 4 | * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ |
michael@0 | 5 | |
michael@0 | 6 | DIR_ATOM(sCurrentProcess, NS_XPCOM_CURRENT_PROCESS_DIR) |
michael@0 | 7 | DIR_ATOM(sGRE_Directory, NS_GRE_DIR) |
michael@0 | 8 | DIR_ATOM(sOS_DriveDirectory, NS_OS_DRIVE_DIR) |
michael@0 | 9 | DIR_ATOM(sOS_TemporaryDirectory, NS_OS_TEMP_DIR) |
michael@0 | 10 | DIR_ATOM(sOS_CurrentProcessDirectory, NS_OS_CURRENT_PROCESS_DIR) |
michael@0 | 11 | DIR_ATOM(sOS_CurrentWorkingDirectory, NS_OS_CURRENT_WORKING_DIR) |
michael@0 | 12 | DIR_ATOM(sOS_HomeDirectory, NS_OS_HOME_DIR) |
michael@0 | 13 | DIR_ATOM(sOS_DesktopDirectory, NS_OS_DESKTOP_DIR) |
michael@0 | 14 | DIR_ATOM(sInitCurrentProcess_dummy, NS_XPCOM_INIT_CURRENT_PROCESS_DIR) |
michael@0 | 15 | #if defined (MOZ_WIDGET_COCOA) |
michael@0 | 16 | DIR_ATOM(sDirectory, NS_OS_SYSTEM_DIR) |
michael@0 | 17 | DIR_ATOM(sTrashDirectory, NS_MAC_TRASH_DIR) |
michael@0 | 18 | DIR_ATOM(sStartupDirectory, NS_MAC_STARTUP_DIR) |
michael@0 | 19 | DIR_ATOM(sShutdownDirectory, NS_MAC_SHUTDOWN_DIR) |
michael@0 | 20 | DIR_ATOM(sAppleMenuDirectory, NS_MAC_APPLE_MENU_DIR) |
michael@0 | 21 | DIR_ATOM(sControlPanelDirectory, NS_MAC_CONTROL_PANELS_DIR) |
michael@0 | 22 | DIR_ATOM(sExtensionDirectory, NS_MAC_EXTENSIONS_DIR) |
michael@0 | 23 | DIR_ATOM(sFontsDirectory, NS_MAC_FONTS_DIR) |
michael@0 | 24 | DIR_ATOM(sPreferencesDirectory, NS_MAC_PREFS_DIR) |
michael@0 | 25 | DIR_ATOM(sDocumentsDirectory, NS_MAC_DOCUMENTS_DIR) |
michael@0 | 26 | DIR_ATOM(sInternetSearchDirectory, NS_MAC_INTERNET_SEARCH_DIR) |
michael@0 | 27 | DIR_ATOM(sUserLibDirectory, NS_MAC_USER_LIB_DIR) |
michael@0 | 28 | DIR_ATOM(sDefaultDownloadDirectory, NS_OSX_DEFAULT_DOWNLOAD_DIR) |
michael@0 | 29 | DIR_ATOM(sUserDesktopDirectory, NS_OSX_USER_DESKTOP_DIR) |
michael@0 | 30 | DIR_ATOM(sLocalDesktopDirectory, NS_OSX_LOCAL_DESKTOP_DIR) |
michael@0 | 31 | DIR_ATOM(sUserApplicationsDirectory, NS_OSX_USER_APPLICATIONS_DIR) |
michael@0 | 32 | DIR_ATOM(sLocalApplicationsDirectory, NS_OSX_LOCAL_APPLICATIONS_DIR) |
michael@0 | 33 | DIR_ATOM(sUserDocumentsDirectory, NS_OSX_USER_DOCUMENTS_DIR) |
michael@0 | 34 | DIR_ATOM(sLocalDocumentsDirectory, NS_OSX_LOCAL_DOCUMENTS_DIR) |
michael@0 | 35 | DIR_ATOM(sUserInternetPlugInDirectory, NS_OSX_USER_INTERNET_PLUGIN_DIR) |
michael@0 | 36 | DIR_ATOM(sLocalInternetPlugInDirectory, NS_OSX_LOCAL_INTERNET_PLUGIN_DIR) |
michael@0 | 37 | DIR_ATOM(sUserFrameworksDirectory, NS_OSX_USER_FRAMEWORKS_DIR) |
michael@0 | 38 | DIR_ATOM(sLocalFrameworksDirectory, NS_OSX_LOCAL_FRAMEWORKS_DIR) |
michael@0 | 39 | DIR_ATOM(sUserPreferencesDirectory, NS_OSX_USER_PREFERENCES_DIR) |
michael@0 | 40 | DIR_ATOM(sLocalPreferencesDirectory, NS_OSX_LOCAL_PREFERENCES_DIR) |
michael@0 | 41 | DIR_ATOM(sPictureDocumentsDirectory, NS_OSX_PICTURE_DOCUMENTS_DIR) |
michael@0 | 42 | DIR_ATOM(sMovieDocumentsDirectory, NS_OSX_MOVIE_DOCUMENTS_DIR) |
michael@0 | 43 | DIR_ATOM(sMusicDocumentsDirectory, NS_OSX_MUSIC_DOCUMENTS_DIR) |
michael@0 | 44 | DIR_ATOM(sInternetSitesDirectory, NS_OSX_INTERNET_SITES_DIR) |
michael@0 | 45 | #elif defined (XP_WIN) |
michael@0 | 46 | DIR_ATOM(sSystemDirectory, NS_OS_SYSTEM_DIR) |
michael@0 | 47 | DIR_ATOM(sWindowsDirectory, NS_WIN_WINDOWS_DIR) |
michael@0 | 48 | DIR_ATOM(sWindowsProgramFiles, NS_WIN_PROGRAM_FILES_DIR) |
michael@0 | 49 | DIR_ATOM(sDesktop, NS_WIN_DESKTOP_DIR) |
michael@0 | 50 | DIR_ATOM(sPrograms, NS_WIN_PROGRAMS_DIR) |
michael@0 | 51 | DIR_ATOM(sControls, NS_WIN_CONTROLS_DIR) |
michael@0 | 52 | DIR_ATOM(sPrinters, NS_WIN_PRINTERS_DIR) |
michael@0 | 53 | DIR_ATOM(sPersonal, NS_WIN_PERSONAL_DIR) |
michael@0 | 54 | DIR_ATOM(sFavorites, NS_WIN_FAVORITES_DIR) |
michael@0 | 55 | DIR_ATOM(sStartup, NS_WIN_STARTUP_DIR) |
michael@0 | 56 | DIR_ATOM(sRecent, NS_WIN_RECENT_DIR) |
michael@0 | 57 | DIR_ATOM(sSendto, NS_WIN_SEND_TO_DIR) |
michael@0 | 58 | DIR_ATOM(sBitbucket, NS_WIN_BITBUCKET_DIR) |
michael@0 | 59 | DIR_ATOM(sStartmenu, NS_WIN_STARTMENU_DIR) |
michael@0 | 60 | DIR_ATOM(sDesktopdirectory, NS_WIN_DESKTOP_DIRECTORY) |
michael@0 | 61 | DIR_ATOM(sDrives, NS_WIN_DRIVES_DIR) |
michael@0 | 62 | DIR_ATOM(sNetwork, NS_WIN_NETWORK_DIR) |
michael@0 | 63 | DIR_ATOM(sNethood, NS_WIN_NETHOOD_DIR) |
michael@0 | 64 | DIR_ATOM(sFonts, NS_WIN_FONTS_DIR) |
michael@0 | 65 | DIR_ATOM(sTemplates, NS_WIN_TEMPLATES_DIR) |
michael@0 | 66 | DIR_ATOM(sCommon_Startmenu, NS_WIN_COMMON_STARTMENU_DIR) |
michael@0 | 67 | DIR_ATOM(sCommon_Programs, NS_WIN_COMMON_PROGRAMS_DIR) |
michael@0 | 68 | DIR_ATOM(sCommon_Startup, NS_WIN_COMMON_STARTUP_DIR) |
michael@0 | 69 | DIR_ATOM(sCommon_Desktopdirectory, NS_WIN_COMMON_DESKTOP_DIRECTORY) |
michael@0 | 70 | DIR_ATOM(sCommon_AppData, NS_WIN_COMMON_APPDATA_DIR) |
michael@0 | 71 | DIR_ATOM(sAppdata, NS_WIN_APPDATA_DIR) |
michael@0 | 72 | DIR_ATOM(sLocalAppdata, NS_WIN_LOCAL_APPDATA_DIR) |
michael@0 | 73 | DIR_ATOM(sPrinthood, NS_WIN_PRINTHOOD) |
michael@0 | 74 | DIR_ATOM(sWinCookiesDirectory, NS_WIN_COOKIES_DIR) |
michael@0 | 75 | DIR_ATOM(sDefaultDownloadDirectory, NS_WIN_DEFAULT_DOWNLOAD_DIR) |
michael@0 | 76 | DIR_ATOM(sDocs, NS_WIN_DOCUMENTS_DIR) |
michael@0 | 77 | DIR_ATOM(sPictures, NS_WIN_PICTURES_DIR) |
michael@0 | 78 | DIR_ATOM(sMusic, NS_WIN_MUSIC_DIR) |
michael@0 | 79 | DIR_ATOM(sVideos, NS_WIN_VIDEOS_DIR) |
michael@0 | 80 | #elif defined (XP_UNIX) |
michael@0 | 81 | DIR_ATOM(sLocalDirectory, NS_UNIX_LOCAL_DIR) |
michael@0 | 82 | DIR_ATOM(sLibDirectory, NS_UNIX_LIB_DIR) |
michael@0 | 83 | DIR_ATOM(sDefaultDownloadDirectory, NS_UNIX_DEFAULT_DOWNLOAD_DIR) |
michael@0 | 84 | DIR_ATOM(sXDGDesktop, NS_UNIX_XDG_DESKTOP_DIR) |
michael@0 | 85 | DIR_ATOM(sXDGDocuments, NS_UNIX_XDG_DOCUMENTS_DIR) |
michael@0 | 86 | DIR_ATOM(sXDGDownload, NS_UNIX_XDG_DOWNLOAD_DIR) |
michael@0 | 87 | DIR_ATOM(sXDGMusic, NS_UNIX_XDG_MUSIC_DIR) |
michael@0 | 88 | DIR_ATOM(sXDGPictures, NS_UNIX_XDG_PICTURES_DIR) |
michael@0 | 89 | DIR_ATOM(sXDGPublicShare, NS_UNIX_XDG_PUBLIC_SHARE_DIR) |
michael@0 | 90 | DIR_ATOM(sXDGTemplates, NS_UNIX_XDG_TEMPLATES_DIR) |
michael@0 | 91 | DIR_ATOM(sXDGVideos, NS_UNIX_XDG_VIDEOS_DIR) |
michael@0 | 92 | #endif |