summaryrefslogtreecommitdiffstats
path: root/base/file_util_posix.cc
diff options
context:
space:
mode:
authorskerner@chromium.org <skerner@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-06-30 05:57:37 +0000
committerskerner@chromium.org <skerner@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-06-30 05:57:37 +0000
commitcadb40bdf4335ee89371b09a754cbf1197c68f73 (patch)
tree231b6cbf99d5d38d22fc4fe0ead53f484ef1cf7a /base/file_util_posix.cc
parent6a1d0f520bbbad446501a1cfd94e7451671f2633 (diff)
downloadchromium_src-cadb40bdf4335ee89371b09a754cbf1197c68f73.zip
chromium_src-cadb40bdf4335ee89371b09a754cbf1197c68f73.tar.gz
chromium_src-cadb40bdf4335ee89371b09a754cbf1197c68f73.tar.bz2
Loosen permission on extension temp dir when a flag is used.
Issue 35198 can not be reproduced locally. To enable users to do experiments, three command line flags are added to chrome: --issue35198-crxdir-browser: Have the browser process create the directory in which the extension will be unzipped. --issue35198-logging: Enable log messages from directory creation in the utility process to be moved to the browser process. --issue35198-permission: Use the most permissive file permissions possible on the extension unpack directory. BUG=35198 TEST=manual Review URL: http://codereview.chromium.org/2802018 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@51231 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'base/file_util_posix.cc')
-rw-r--r--base/file_util_posix.cc10
1 files changed, 9 insertions, 1 deletions
diff --git a/base/file_util_posix.cc b/base/file_util_posix.cc
index 9d738da..e868a41 100644
--- a/base/file_util_posix.cc
+++ b/base/file_util_posix.cc
@@ -428,7 +428,15 @@ static bool CreateTemporaryDirInDirImpl(const FilePath& base_dir,
bool CreateTemporaryDirInDir(const FilePath& base_dir,
const FilePath::StringType& prefix,
- FilePath* new_dir) {
+ FilePath* new_dir,
+ bool loosen_permissions) {
+ // To understand crbug/35198, the ability to call this
+ // this function on windows while giving loose permissions
+ // to the resulting directory has been temporarily added.
+ // It should not be posible to call this function with
+ // loosen_permissions == true on non-windows plarforms.
+ CHECK(!loosen_permissions);
+
FilePath::StringType mkdtemp_template = prefix;
mkdtemp_template.append(FILE_PATH_LITERAL("XXXXXX"));
return CreateTemporaryDirInDirImpl(base_dir, mkdtemp_template, new_dir);