|
Ensure that PP_Instance values are unique within a plugin process in addition
to within the renderer.
This works by having the renderer check with the plugin that a PP_Instance is
available before using it. If it's already seen, the renderer will generate a
new PP_Instance and retry.
For performance, this message is handled on the I/O thread of the plugin so it
will not be blocked by the actual plugin code.
This requires an unfortunate amount of plumbing. Since the renderer can't
depend directly on the proxy, we have a new PPB_Proxy function to set the
verification function used to perform this check.
There is also a new plugin dispatcher delegate where I moved some of the global
state to that used to go into the init function. Adding yet another parameter
there seemed unfortunate.
TEST=manual
BUG= 74961
Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=77693
|
Unified diffs |
Side-by-side diffs |
Delta from patch set |
Stats (+339 lines, -35 lines) |
Patch |
 |
M |
chrome/common/DEPS
|
View
|
1
2
3
|
1 chunk |
+1 line, -0 lines |
0 comments
|
Download
|
 |
M |
chrome/common/pepper_plugin_registry.h
|
View
|
1
2
3
|
3 chunks |
+8 lines, -1 line |
0 comments
|
Download
|
 |
M |
chrome/common/pepper_plugin_registry.cc
|
View
|
1
2
3
|
2 chunks |
+17 lines, -0 lines |
0 comments
|
Download
|
 |
M |
chrome/ppapi_plugin/ppapi_thread.h
|
View
|
1
2
3
|
3 chunks |
+10 lines, -1 line |
0 comments
|
Download
|
 |
M |
chrome/ppapi_plugin/ppapi_thread.cc
|
View
|
1
2
3
|
2 chunks |
+13 lines, -4 lines |
0 comments
|
Download
|
 |
M |
chrome/renderer/pepper_plugin_delegate_impl.cc
|
View
|
1
2
3
|
1 chunk |
+2 lines, -3 lines |
0 comments
|
Download
|
 |
M |
content/common/child_process.h
|
View
|
1
2
3
|
1 chunk |
+5 lines, -1 line |
0 comments
|
Download
|
 |
M |
ppapi/c/private/ppb_proxy_private.h
|
View
|
1
2
3
|
2 chunks |
+15 lines, -1 line |
0 comments
|
Download
|
 |
M |
ppapi/ppapi_shared_proxy.gypi
|
View
|
1
2
3
|
1 chunk |
+2 lines, -0 lines |
0 comments
|
Download
|
 |
M |
ppapi/proxy/dispatcher.h
|
View
|
1
2
3
|
4 chunks |
+29 lines, -4 lines |
0 comments
|
Download
|
 |
M |
ppapi/proxy/dispatcher.cc
|
View
|
1
2
3
|
2 chunks |
+6 lines, -5 lines |
0 comments
|
Download
|
 |
M |
ppapi/proxy/host_dispatcher.h
|
View
|
1
2
3
|
2 chunks |
+2 lines, -2 lines |
0 comments
|
Download
|
 |
M |
ppapi/proxy/host_dispatcher.cc
|
View
|
1
2
3
|
5 chunks |
+33 lines, -9 lines |
0 comments
|
Download
|
 |
M |
ppapi/proxy/plugin_dispatcher.h
|
View
|
1
2
3
|
1 chunk |
+3 lines, -0 lines |
0 comments
|
Download
|
 |
M |
ppapi/proxy/plugin_dispatcher.cc
|
View
|
1
2
3
|
2 chunks |
+15 lines, -0 lines |
0 comments
|
Download
|
 |
A |
ppapi/proxy/plugin_message_filter.h
|
View
|
|
1 chunk |
+56 lines, -0 lines |
0 comments
|
Download
|
 |
A |
ppapi/proxy/plugin_message_filter.cc
|
View
|
|
1 chunk |
+61 lines, -0 lines |
0 comments
|
Download
|
 |
M |
ppapi/proxy/ppapi_messages_internal.h
|
View
|
1
2
3
|
1 chunk |
+18 lines, -0 lines |
0 comments
|
Download
|
 |
M |
ppapi/proxy/ppb_file_ref_proxy.cc
|
View
|
1
2
3
|
1 chunk |
+1 line, -1 line |
0 comments
|
Download
|
 |
M |
webkit/plugins/ppapi/plugin_module.h
|
View
|
1
2
3
|
3 chunks |
+16 lines, -0 lines |
0 comments
|
Download
|
 |
M |
webkit/plugins/ppapi/plugin_module.cc
|
View
|
1
2
3
|
2 chunks |
+14 lines, -1 line |
0 comments
|
Download
|
 |
M |
webkit/plugins/ppapi/ppb_proxy_impl.cc
|
View
|
1
2
3
|
1 chunk |
+9 lines, -1 line |
0 comments
|
Download
|
 |
M |
webkit/plugins/ppapi/resource_tracker.cc
|
View
|
1
2
3
|
2 chunks |
+3 lines, -1 line |
0 comments
|
Download
|
Total messages: 3 (0 generated)
|