Pass synchronous messages by JSON string.
We are going to use IPC_MESSAGE_HANDLER_DELAY_REPLY to handle synchronous messages but DictionaryValue is not copyable, so we pass the JSON string instead.
This commit is contained in:
parent
07b5039c64
commit
ef5a4b5fe0
10 changed files with 44 additions and 20 deletions
|
@ -14,8 +14,15 @@ class Ipc extends EventEmitter
|
|||
constructor: ->
|
||||
process.on 'ATOM_INTERNAL_MESSAGE', (args...) =>
|
||||
@emit(args...)
|
||||
process.on 'ATOM_INTERNAL_MESSAGE_SYNC', (args...) =>
|
||||
@emit(args...)
|
||||
process.on 'ATOM_INTERNAL_MESSAGE_SYNC', (channel, event, args...) =>
|
||||
returnValue = 'null'
|
||||
get = -> returnValue
|
||||
set = (value) -> returnValue = JSON.stringify(value)
|
||||
|
||||
Object.defineProperty event, 'returnValue', {get, set}
|
||||
Object.defineProperty event, 'result', {get, set}
|
||||
|
||||
@emit(channel, event, args...)
|
||||
|
||||
send: (processId, routingId, args...) ->
|
||||
@sendChannel(processId, routingId, 'message', args...)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue