Index: src/npw-viewer.c =================================================================== --- src/npw-viewer.c (revision 942) +++ src/npw-viewer.c (working copy) @@ -2059,7 +2059,7 @@ RPC_METHOD_NPN_INVOKE, RPC_TYPE_NPW_PLUGIN_INSTANCE, plugin, RPC_TYPE_NP_OBJECT, npobj, - RPC_TYPE_NP_IDENTIFIER, methodName, + RPC_TYPE_NP_IDENTIFIER, &methodName, RPC_TYPE_ARRAY, RPC_TYPE_NP_VARIANT, argCount, args, RPC_TYPE_INVALID); @@ -2249,7 +2249,7 @@ RPC_METHOD_NPN_GET_PROPERTY, RPC_TYPE_NPW_PLUGIN_INSTANCE, plugin, RPC_TYPE_NP_OBJECT, npobj, - RPC_TYPE_NP_IDENTIFIER, propertyName, + RPC_TYPE_NP_IDENTIFIER, &propertyName, RPC_TYPE_INVALID); if (error != RPC_ERROR_NO_ERROR) { @@ -2311,7 +2311,7 @@ RPC_METHOD_NPN_SET_PROPERTY, RPC_TYPE_NPW_PLUGIN_INSTANCE, plugin, RPC_TYPE_NP_OBJECT, npobj, - RPC_TYPE_NP_IDENTIFIER, propertyName, + RPC_TYPE_NP_IDENTIFIER, &propertyName, RPC_TYPE_NP_VARIANT, value, RPC_TYPE_INVALID); @@ -2370,7 +2370,7 @@ RPC_METHOD_NPN_REMOVE_PROPERTY, RPC_TYPE_NPW_PLUGIN_INSTANCE, plugin, RPC_TYPE_NP_OBJECT, npobj, - RPC_TYPE_NP_IDENTIFIER, propertyName, + RPC_TYPE_NP_IDENTIFIER, &propertyName, RPC_TYPE_INVALID); if (error != RPC_ERROR_NO_ERROR) { @@ -2427,7 +2427,7 @@ RPC_METHOD_NPN_HAS_PROPERTY, RPC_TYPE_NPW_PLUGIN_INSTANCE, plugin, RPC_TYPE_NP_OBJECT, npobj, - RPC_TYPE_NP_IDENTIFIER, propertyName, + RPC_TYPE_NP_IDENTIFIER, &propertyName, RPC_TYPE_INVALID); if (error != RPC_ERROR_NO_ERROR) { @@ -2484,7 +2484,7 @@ RPC_METHOD_NPN_HAS_METHOD, RPC_TYPE_NPW_PLUGIN_INSTANCE, plugin, RPC_TYPE_NP_OBJECT, npobj, - RPC_TYPE_NP_IDENTIFIER, methodName, + RPC_TYPE_NP_IDENTIFIER, &methodName, RPC_TYPE_INVALID); if (error != RPC_ERROR_NO_ERROR) { @@ -2780,7 +2780,7 @@ int error = rpc_method_invoke(g_rpc_connection, RPC_METHOD_NPN_IDENTIFIER_IS_STRING, - RPC_TYPE_NP_IDENTIFIER, identifier, + RPC_TYPE_NP_IDENTIFIER, &identifier, RPC_TYPE_INVALID); if (error != RPC_ERROR_NO_ERROR) { @@ -2838,7 +2838,7 @@ int error = rpc_method_invoke(g_rpc_connection, RPC_METHOD_NPN_UTF8_FROM_IDENTIFIER, - RPC_TYPE_NP_IDENTIFIER, identifier, + RPC_TYPE_NP_IDENTIFIER, &identifier, RPC_TYPE_INVALID); if (error != RPC_ERROR_NO_ERROR) { @@ -2902,7 +2902,7 @@ int error = rpc_method_invoke(g_rpc_connection, RPC_METHOD_NPN_INT_FROM_IDENTIFIER, - RPC_TYPE_NP_IDENTIFIER, identifier, + RPC_TYPE_NP_IDENTIFIER, &identifier, RPC_TYPE_INVALID); if (error != RPC_ERROR_NO_ERROR) { Index: src/npw-wrapper.c =================================================================== --- src/npw-wrapper.c (revision 942) +++ src/npw-wrapper.c (working copy) @@ -1528,7 +1528,7 @@ free(name); return rpc_method_send_reply(connection, - RPC_TYPE_NP_IDENTIFIER, ident, + RPC_TYPE_NP_IDENTIFIER, &ident, RPC_TYPE_INVALID); } @@ -1601,7 +1601,7 @@ NPIdentifier ident = g_NPN_GetIntIdentifier(intid); return rpc_method_send_reply(connection, - RPC_TYPE_NP_IDENTIFIER, ident, + RPC_TYPE_NP_IDENTIFIER, &ident, RPC_TYPE_INVALID); } Index: src/npruntime.c =================================================================== --- src/npruntime.c (revision 942) +++ src/npruntime.c (working copy) @@ -221,7 +221,7 @@ int error = rpc_method_invoke(g_rpc_connection, RPC_METHOD_NPCLASS_HAS_METHOD, RPC_TYPE_NP_OBJECT, npobj, - RPC_TYPE_NP_IDENTIFIER, name, + RPC_TYPE_NP_IDENTIFIER, &name, RPC_TYPE_INVALID); if (error != RPC_ERROR_NO_ERROR) { @@ -327,7 +327,7 @@ int error = rpc_method_invoke(g_rpc_connection, RPC_METHOD_NPCLASS_INVOKE, RPC_TYPE_NP_OBJECT, npobj, - RPC_TYPE_NP_IDENTIFIER, name, + RPC_TYPE_NP_IDENTIFIER, &name, RPC_TYPE_ARRAY, RPC_TYPE_NP_VARIANT, argCount, args, RPC_TYPE_INVALID); @@ -509,7 +509,7 @@ int error = rpc_method_invoke(g_rpc_connection, RPC_METHOD_NPCLASS_HAS_PROPERTY, RPC_TYPE_NP_OBJECT, npobj, - RPC_TYPE_NP_IDENTIFIER, name, + RPC_TYPE_NP_IDENTIFIER, &name, RPC_TYPE_INVALID); if (error != RPC_ERROR_NO_ERROR) { @@ -599,7 +599,7 @@ int error = rpc_method_invoke(g_rpc_connection, RPC_METHOD_NPCLASS_GET_PROPERTY, RPC_TYPE_NP_OBJECT, npobj, - RPC_TYPE_NP_IDENTIFIER, name, + RPC_TYPE_NP_IDENTIFIER, &name, RPC_TYPE_INVALID); if (error != RPC_ERROR_NO_ERROR) { @@ -684,7 +684,7 @@ int error = rpc_method_invoke(g_rpc_connection, RPC_METHOD_NPCLASS_SET_PROPERTY, RPC_TYPE_NP_OBJECT, npobj, - RPC_TYPE_NP_IDENTIFIER, name, + RPC_TYPE_NP_IDENTIFIER, &name, RPC_TYPE_NP_VARIANT, value, RPC_TYPE_INVALID); @@ -763,7 +763,7 @@ int error = rpc_method_invoke(g_rpc_connection, RPC_METHOD_NPCLASS_REMOVE_PROPERTY, RPC_TYPE_NP_OBJECT, npobj, - RPC_TYPE_NP_IDENTIFIER, name, + RPC_TYPE_NP_IDENTIFIER, &name, RPC_TYPE_INVALID); if (error != RPC_ERROR_NO_ERROR) { Index: src/npw-rpc.c =================================================================== --- src/npw-rpc.c (revision 942) +++ src/npw-rpc.c (working copy) @@ -1252,7 +1252,7 @@ // the browser side static int do_send_NPIdentifier(rpc_message_t *message, void *p_value) { - NPIdentifier ident = (NPIdentifier)p_value; + NPIdentifier ident = *(NPIdentifier *)p_value; int id = 0; if (ident) { #ifdef BUILD_WRAPPER