diff options
author | jam@chromium.org <jam@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-07-23 22:20:41 +0000 |
---|---|---|
committer | jam@chromium.org <jam@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-07-23 22:20:41 +0000 |
commit | 69211e8c01a4aacd8f8b5afd61b3d2267460dfa8 (patch) | |
tree | a1f2a24c2b8caa5e174cc68bb34dc9c0742a5000 /content/browser/plugin_process_host.cc | |
parent | 744ec5b2c97bf4e54526dfca4a9f2052cdd7c324 (diff) | |
download | chromium_src-69211e8c01a4aacd8f8b5afd61b3d2267460dfa8.zip chromium_src-69211e8c01a4aacd8f8b5afd61b3d2267460dfa8.tar.gz chromium_src-69211e8c01a4aacd8f8b5afd61b3d2267460dfa8.tar.bz2 |
Get the path of the plugin interposing library from the embedder, since they're the ones who bundle it. Make content still work without it. This allows plugins to work inside content_shell.
BUG=90448
Review URL: https://chromiumcodereview.appspot.com/10806075
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@147965 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'content/browser/plugin_process_host.cc')
-rw-r--r-- | content/browser/plugin_process_host.cc | 19 |
1 files changed, 11 insertions, 8 deletions
diff --git a/content/browser/plugin_process_host.cc b/content/browser/plugin_process_host.cc index f355012..23cac73 100644 --- a/content/browser/plugin_process_host.cc +++ b/content/browser/plugin_process_host.cc @@ -261,14 +261,17 @@ bool PluginProcessHost::Init(const webkit::WebPluginInfo& info) { #if defined(OS_POSIX) base::EnvironmentVector env; #if defined(OS_MACOSX) && !defined(__LP64__) - // Add our interposing library for Carbon. This is stripped back out in - // plugin_main.cc, so changes here should be reflected there. - std::string interpose_list(plugin_interpose_strings::kInterposeLibraryPath); - const char* existing_list = - getenv(plugin_interpose_strings::kDYLDInsertLibrariesKey); - if (existing_list) { - interpose_list.insert(0, ":"); - interpose_list.insert(0, existing_list); + std::string interpose_list = + content::GetContentClient()->GetCarbonInterposePath(); + if (!interpose_list.empty()) { + // Add our interposing library for Carbon. This is stripped back out in + // plugin_main.cc, so changes here should be reflected there. + const char* existing_list = + getenv(plugin_interpose_strings::kDYLDInsertLibrariesKey); + if (existing_list) { + interpose_list.insert(0, ":"); + interpose_list.insert(0, existing_list); + } } env.push_back(std::pair<std::string, std::string>( plugin_interpose_strings::kDYLDInsertLibrariesKey, |