Commit 36fc8174 authored by dmichael@chromium.org's avatar dmichael@chromium.org

PPAPI: Make "no_interface_string" APIs have no PNaCl wrapper

BUG=367896

Review URL: https://codereview.chromium.org/305233002

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@274034 0039d316-1c4b-4281-b951-d872f2087c98
parent 94cf4067
...@@ -59,6 +59,12 @@ class PnaclGen(WrapperGen): ...@@ -59,6 +59,12 @@ class PnaclGen(WrapperGen):
return True return True
if iface.GetName().endswith('Trusted'): if iface.GetName().endswith('Trusted'):
return False return False
# TODO(dmichael): We have no way to wrap PPP_ interfaces without an
# interface string. If any ever need wrapping, we'll need to figure out a
# way to get the plugin-side of the Pepper proxy (within the IRT) to access
# and use the wrapper.
if iface.GetProperty("no_interface_string"):
return False
for member in iface.GetListOf('Member'): for member in iface.GetListOf('Member'):
release = member.GetRelease(version) release = member.GetRelease(version)
if self.MemberNeedsWrapping(member, release): if self.MemberNeedsWrapping(member, release):
......
...@@ -349,9 +349,7 @@ const void *__%(wrapper_prefix)s_PPPGetInterface(const char *name) { ...@@ -349,9 +349,7 @@ const void *__%(wrapper_prefix)s_PPPGetInterface(const char *name) {
def GenerateWrapperInfoAndCollection(self, iface_releases, out): def GenerateWrapperInfoAndCollection(self, iface_releases, out):
for iface in iface_releases: for iface in iface_releases:
iface_macro = "NULL" iface_macro = self.cgen.GetInterfaceMacro(iface.node, iface.version)
if not iface.node.GetProperty("no_interface_string"):
iface_macro = self.cgen.GetInterfaceMacro(iface.node, iface.version)
if iface.needs_wrapping: if iface.needs_wrapping:
wrap_iface = '(const void *) &%s_Wrappers_%s' % (self.wrapper_prefix, wrap_iface = '(const void *) &%s_Wrappers_%s' % (self.wrapper_prefix,
iface.struct_name) iface.struct_name)
......
...@@ -153,3 +153,9 @@ interface PPP_SomeWrap { ...@@ -153,3 +153,9 @@ interface PPP_SomeWrap {
[version=2.0] [version=2.0]
void foo2([in] int32_t a); void foo2([in] int32_t a);
}; };
[no_interface_string]
interface PPP_NoIFString {
int32_t Dummy([in] some_struct a);
};
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment