Closed Bug 516798 Opened 12 years ago Closed 12 years ago

IPDL code generation error when returning an actor type

Categories

(Core :: IPC, defect)

x86
Linux
defect
Not set
normal

Tracking

()

RESOLVED FIXED

People

(Reporter: benjamin, Assigned: cjones)

References

(Blocks 1 open bug)

Details

Attachments

(1 file)

Attached patch WIP patchSplinter Review
I'm declaring a message which returns an actor:

  rpc NPN_GetValue_NPNVWindowNPObject()
    returns (PPluginScriptableObject result);

The generated code fails to compile:

In file included from ../../../src/dom/plugins/PluginInstanceChild.h:42,
                 from ../../../src/dom/plugins/PluginInstanceChild.cpp:39:
../../ipc/ipdl/_ipdlheaders/mozilla/plugins/PPluginInstanceChild.h: In member function ‘nsresult mozilla::plugins::PPluginInstanceChild::CallNPN_GetValue_NPNVWindowNPObject(mozilla::plugins::PPluginScriptableObjectChild*)’:
../../ipc/ipdl/_ipdlheaders/mozilla/plugins/PPluginInstanceChild.h:229: error: redeclaration of ‘mozilla::ipc::ActorHandle result__ah’
../../ipc/ipdl/_ipdlheaders/mozilla/plugins/PPluginInstanceChild.h:204: error: ‘mozilla::ipc::ActorHandle result__ah’ previously declared here
../../ipc/ipdl/_ipdlheaders/mozilla/plugins/PPluginInstanceChild.h: In member function ‘nsresult mozilla::plugins::PPluginInstanceChild::CallNPN_GetValue_NPNVPluginElementNPObject(mozilla::plugins::PPluginScriptableObjectChild*)’:
../../ipc/ipdl/_ipdlheaders/mozilla/plugins/PPluginInstanceChild.h:277: error: redeclaration of ‘mozilla::ipc::ActorHandle result__ah’
../../ipc/ipdl/_ipdlheaders/mozilla/plugins/PPluginInstanceChild.h:252: error: ‘mozilla::ipc::ActorHandle result__ah’ previously declared here

In addition to the multiple declarations, I think that the signature is also wrong: it's currently 

nsresult CallNPN_GetValue_NPNVWindowNPObject(PPluginScriptableObjectChild* result)

and it seems like it should be

nsresult CallNPN_GetValue_NPNVWindowNPObject(PPluginScriptableObjectChild** result)
http://hg.mozilla.org/projects/electrolysis/rev/cb6ed6132f0e
Status: NEW → RESOLVED
Closed: 12 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.