| Index: webkit/support/test_webkit_platform_support.cc | 
| diff --git a/webkit/support/test_webkit_platform_support.cc b/webkit/support/test_webkit_platform_support.cc | 
| index 5067681d96f8c51a1a92c9154500faf2e9c54a98..6ba5c7b11d4481968bef74a5bea1e17638524925 100644 | 
| --- a/webkit/support/test_webkit_platform_support.cc | 
| +++ b/webkit/support/test_webkit_platform_support.cc | 
| @@ -43,6 +43,7 @@ | 
| #include "webkit/glue/webkitplatformsupport_impl.h" | 
| #include "webkit/gpu/webgraphicscontext3d_in_process_command_buffer_impl.h" | 
| #include "webkit/gpu/webgraphicscontext3d_in_process_impl.h" | 
| +#include "webkit/plugins/npapi/plugin_list.h" | 
| #include "webkit/support/simple_database_system.h" | 
| #include "webkit/support/test_webmessageportchannel.h" | 
| #include "webkit/support/webkit_support.h" | 
| @@ -51,6 +52,7 @@ | 
| #include "webkit/tools/test_shell/mock_webclipboard_impl.h" | 
| #include "webkit/tools/test_shell/simple_appcache_system.h" | 
| #include "webkit/tools/test_shell/simple_file_system.h" | 
| +#include "webkit/tools/test_shell/simple_socket_stream_bridge.h" | 
| #include "webkit/tools/test_shell/simple_resource_loader_bridge.h" | 
| #include "webkit/tools/test_shell/simple_webcookiejar_impl.h" | 
| #include "webkit/tools/test_shell/test_shell_request_context.h" | 
| @@ -407,3 +409,38 @@ void TestWebKitPlatformSupport::setGamepadData( | 
| const WebKit::WebGamepads& data) { | 
| gamepad_data_ = data; | 
| } | 
| + | 
| +void TestWebKitPlatformSupport::GetPlugins( | 
| +    bool refresh, std::vector<webkit::WebPluginInfo>* plugins) { | 
| +  if (refresh) | 
| +    webkit::npapi::PluginList::Singleton()->RefreshPlugins(); | 
| +  webkit::npapi::PluginList::Singleton()->GetPlugins(plugins); | 
| +  // Don't load the forked npapi_layout_test_plugin in DRT, we only want to | 
| +  // use the upstream version TestNetscapePlugIn. | 
| +  const FilePath::StringType kPluginBlackList[] = { | 
| +    FILE_PATH_LITERAL("npapi_layout_test_plugin.dll"), | 
| +    FILE_PATH_LITERAL("WebKitTestNetscapePlugIn.plugin"), | 
| +    FILE_PATH_LITERAL("libnpapi_layout_test_plugin.so"), | 
| +  }; | 
| +  for (int i = plugins->size() - 1; i >= 0; --i) { | 
| +    webkit::WebPluginInfo plugin_info = plugins->at(i); | 
| +    for (size_t j = 0; j < arraysize(kPluginBlackList); ++j) { | 
| +      if (plugin_info.path.BaseName() == FilePath(kPluginBlackList[j])) { | 
| +        plugins->erase(plugins->begin() + i); | 
| +      } | 
| +    } | 
| +  } | 
| +} | 
| + | 
| +webkit_glue::ResourceLoaderBridge* | 
| +TestWebKitPlatformSupport::CreateResourceLoader( | 
| +    const webkit_glue::ResourceLoaderBridge::RequestInfo& request_info) { | 
| +  return SimpleResourceLoaderBridge::Create(request_info); | 
| +} | 
| + | 
| +webkit_glue::WebSocketStreamHandleBridge* | 
| +TestWebKitPlatformSupport::CreateWebSocketBridge( | 
| +    WebKit::WebSocketStreamHandle* handle, | 
| +    webkit_glue::WebSocketStreamHandleDelegate* delegate) { | 
| +  return SimpleSocketStreamBridge::Create(handle, delegate); | 
| +} | 
|  |