| Index: ppapi/nacl_irt/irt_ppapi.cc
|
| diff --git a/ppapi/nacl_irt/irt_ppapi.cc b/ppapi/nacl_irt/irt_ppapi.cc
|
| index 1d41f518c4fabd535979bc1c240734fa06acfb7a..466573ce68b38321e08b89bad3be3ead839d0e49 100644
|
| --- a/ppapi/nacl_irt/irt_ppapi.cc
|
| +++ b/ppapi/nacl_irt/irt_ppapi.cc
|
| @@ -6,6 +6,7 @@
|
| #include "native_client/src/trusted/service_runtime/include/sys/unistd.h"
|
| #include "native_client/src/untrusted/irt/irt.h"
|
| #include "native_client/src/untrusted/irt/irt_private.h"
|
| +#include "ppapi/nacl_irt/irt_manifest.h"
|
| #include "ppapi/nacl_irt/irt_ppapi.h"
|
| #include "ppapi/nacl_irt/plugin_main.h"
|
| #include "ppapi/nacl_irt/public/irt_ppapi.h"
|
| @@ -46,19 +47,35 @@ static int ppapihook_pnacl_private_filter(void) {
|
| return pnacl_mode;
|
| }
|
|
|
| +static const nacl_irt_resource_open kIrtResourceOpen = {
|
| + ppapi::IrtOpenResource,
|
| +};
|
| +
|
| +static int not_pnacl_filter(void) {
|
| + int pnacl_mode = sysconf(NACL_ABI__SC_NACL_PNACL_MODE);
|
| + if (pnacl_mode == -1)
|
| + return 0;
|
| + return !pnacl_mode;
|
| +}
|
| +
|
| static const struct nacl_irt_interface irt_interfaces[] = {
|
| { NACL_IRT_PPAPIHOOK_v0_1, &nacl_irt_ppapihook, sizeof(nacl_irt_ppapihook),
|
| NULL },
|
| { NACL_IRT_PPAPIHOOK_PNACL_PRIVATE_v0_1,
|
| &nacl_irt_ppapihook_pnacl_private, sizeof(nacl_irt_ppapihook_pnacl_private),
|
| ppapihook_pnacl_private_filter },
|
| + { NACL_IRT_RESOURCE_OPEN_v0_1, &kIrtResourceOpen,
|
| + sizeof(kIrtResourceOpen), not_pnacl_filter },
|
| };
|
|
|
| size_t chrome_irt_query(const char* interface_ident,
|
| void* table, size_t tablesize) {
|
| - size_t result = nacl_irt_query_core(interface_ident, table, tablesize);
|
| + size_t result = nacl_irt_query_list(interface_ident,
|
| + table,
|
| + tablesize,
|
| + irt_interfaces,
|
| + sizeof(irt_interfaces));
|
| if (result != 0)
|
| return result;
|
| - return nacl_irt_query_list(interface_ident, table, tablesize,
|
| - irt_interfaces, sizeof(irt_interfaces));
|
| + return nacl_irt_query_core(interface_ident, table, tablesize);
|
| }
|
|
|