summaryrefslogtreecommitdiffstats
path: root/content/plugin
diff options
context:
space:
mode:
authorjschuh@chromium.org <jschuh@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-02-09 21:03:03 +0000
committerjschuh@chromium.org <jschuh@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-02-09 21:03:03 +0000
commit69faf748560f4f9c98b5e81c1bc917a3b7d6e045 (patch)
treee803eeaaf59cbdf58b10d9ec2d383c2f5cdcc4c6 /content/plugin
parent0f65b52df319be274e52e915b13b7b368bb525d9 (diff)
downloadchromium_src-69faf748560f4f9c98b5e81c1bc917a3b7d6e045.zip
chromium_src-69faf748560f4f9c98b5e81c1bc917a3b7d6e045.tar.gz
chromium_src-69faf748560f4f9c98b5e81c1bc917a3b7d6e045.tar.bz2
Tighten Flash sandbox to USER_LIMITED
Review URL: https://chromiumcodereview.appspot.com/9372013 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@121286 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'content/plugin')
-rw-r--r--content/plugin/plugin_main.cc9
1 files changed, 9 insertions, 0 deletions
diff --git a/content/plugin/plugin_main.cc b/content/plugin/plugin_main.cc
index 8e8b1ea..59f3a7b 100644
--- a/content/plugin/plugin_main.cc
+++ b/content/plugin/plugin_main.cc
@@ -7,6 +7,9 @@
#if defined(OS_WIN)
#include <objbase.h>
#include <windows.h>
+// Some directx includes can trigger deprecation warnings.
+#pragma warning(disable:4995)
+#include <dshow.h>
#endif
#include "base/command_line.h"
@@ -21,6 +24,7 @@
#include "content/public/common/main_function_params.h"
#if defined(OS_WIN)
+#include "base/win/scoped_comptr.h"
#include "content/common/injection_test_dll.h"
#include "sandbox/src/sandbox.h"
#elif defined(OS_POSIX) && !defined(OS_MACOSX)
@@ -134,6 +138,11 @@ int PluginMain(const content::MainFunctionParams& parameters) {
DVLOG(1) << "Sandboxing flash";
if (!PreloadIMEForFlash())
DVLOG(1) << "IME preload failed";
+
+ // Warm up the device enumerator for webcam and microphone.
+ base::win::ScopedComPtr<ICreateDevEnum> device_enumerator;
+ device_enumerator.CreateInstance(CLSID_SystemDeviceEnum);
+
DelayedLowerToken(target_services);
} else {
target_services->LowerToken();