summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--webkit/glue/plugins/plugin_host.cc7
-rw-r--r--webkit/glue/plugins/test/plugin_execute_script_delete_test.cc14
2 files changed, 18 insertions, 3 deletions
diff --git a/webkit/glue/plugins/plugin_host.cc b/webkit/glue/plugins/plugin_host.cc
index 66750ac..12e6330 100644
--- a/webkit/glue/plugins/plugin_host.cc
+++ b/webkit/glue/plugins/plugin_host.cc
@@ -741,6 +741,13 @@ NPError NPN_GetValue(NPP id, NPNVariable variable, void *value) {
rv = NPERR_NO_ERROR;
break;
}
+ case NPNVSupportsWindowless:
+ {
+ NPBool* supports_windowless = reinterpret_cast<NPBool*>(value);
+ *supports_windowless = TRUE;
+ rv = NPERR_NO_ERROR;
+ break;
+ }
case default_plugin::kMissingPluginStatusStart +
default_plugin::MISSING_PLUGIN_AVAILABLE:
// fall through
diff --git a/webkit/glue/plugins/test/plugin_execute_script_delete_test.cc b/webkit/glue/plugins/test/plugin_execute_script_delete_test.cc
index cb8a025..7137ceb 100644
--- a/webkit/glue/plugins/test/plugin_execute_script_delete_test.cc
+++ b/webkit/glue/plugins/test/plugin_execute_script_delete_test.cc
@@ -16,9 +16,17 @@ int16 ExecuteScriptDeleteTest::HandleEvent(void* event) {
NPEvent* np_event = reinterpret_cast<NPEvent*>(event);
if (WM_PAINT == np_event->event ) {
NPNetscapeFuncs* browser = NPAPIClient::PluginClient::HostFunctions();
- NPUTF8* urlString = "javascript:DeletePluginWithinScript()";
- NPUTF8* targetString = NULL;
- browser->geturl(id(), urlString, targetString);
+
+ NPBool supports_windowless = 0;
+ NPError result = browser->getvalue(id(), NPNVSupportsWindowless,
+ &supports_windowless);
+ if ((result != NPERR_NO_ERROR) || (supports_windowless != TRUE)) {
+ SetError("Failed to read NPNVSupportsWindowless value");
+ } else {
+ NPUTF8* urlString = "javascript:DeletePluginWithinScript()";
+ NPUTF8* targetString = NULL;
+ browser->geturl(id(), urlString, targetString);
+ }
SignalTestCompleted();
}
// If this test failed, then we'd have crashed by now.