diff options
author | evan@chromium.org <evan@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-11-19 03:39:29 +0000 |
---|---|---|
committer | evan@chromium.org <evan@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-11-19 03:39:29 +0000 |
commit | 2ac610f6d17d02e62e73ea69a5d7eceedece95c8 (patch) | |
tree | 902671cb0cd33ad31199108666b15b094160c259 /chrome/common/chrome_constants.cc | |
parent | 010ab37a0833a2a4ac8a35ef985b7adcd6a21d44 (diff) | |
download | chromium_src-2ac610f6d17d02e62e73ea69a5d7eceedece95c8.zip chromium_src-2ac610f6d17d02e62e73ea69a5d7eceedece95c8.tar.gz chromium_src-2ac610f6d17d02e62e73ea69a5d7eceedece95c8.tar.bz2 |
linux: use /proc/self/exe when exec'ing ourselves
We don't want to ever go out to disk when looking for data after
startup, since they can be changed by an update.
We *should* just be using the zygote, but the zygote is sandboxed-only
for now, and fixing that has a lengthy dependency graph. In the
interim, /proc/self/exe is the correct executable and exec'ing it should
work as long as the subprocess doesn't need any other files from the
Chrome directory.
BUG=22703
TEST=Start Chrome. Move away the entire Chrome directory; plugins
should still work.
Review URL: http://codereview.chromium.org/403018
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@32486 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/common/chrome_constants.cc')
-rw-r--r-- | chrome/common/chrome_constants.cc | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/chrome/common/chrome_constants.cc b/chrome/common/chrome_constants.cc index 1226fe5..81d03ea 100644 --- a/chrome/common/chrome_constants.cc +++ b/chrome/common/chrome_constants.cc @@ -29,7 +29,9 @@ const wchar_t kBrowserProcessExecutableName[] = L"chrome.exe"; const wchar_t kHelperProcessExecutableName[] = L"chrome.exe"; #elif defined(OS_LINUX) const wchar_t kBrowserProcessExecutableName[] = L"chrome"; -const wchar_t kHelperProcessExecutableName[] = L"chrome"; +// Helper processes end up with a name of "exe" due to execing via +// /proc/self/exe. See bug 22703. +const wchar_t kHelperProcessExecutableName[] = L"exe"; #elif defined(OS_MACOSX) const wchar_t kBrowserProcessExecutableName[] = PRODUCT_STRING_W; const wchar_t kHelperProcessExecutableName[] = PRODUCT_STRING_W L" Helper"; |