Add input queue to backend, fixing process leak problem.
commitf14b85c1784059be6cdbe40056634e23618359c2
authorBjorn Winckler <bjorn.winckler@gmail.com>
Thu, 25 Oct 2007 17:29:44 +0000 (25 19:29 +0200)
committerBjorn Winckler <bjorn.winckler@gmail.com>
Thu, 25 Oct 2007 17:29:44 +0000 (25 19:29 +0200)
tree1a573fdc910cb065ce5a02cfefbe62e21f9965b5
parent6f9ff670c6254e01e160fb07abf4fad1e4635f32
Add input queue to backend, fixing process leak problem.

Mouse and keyboard input is handled immediately, all other input is put on a
queue which is processed whenever gui_mch_update() is called.  This avoids DO
calls to be sent from the backend during processing of another DO call.  (See
comments in MMBackend processInput:data: and processInputQueue.)  One problem
this caused was that connectionDidDie notification was not received when
processInput:data: got called recursively (and thus processes could "leak").

Also did some code cleanup to MMBackend.
src/MacVim/MMAppController.m
src/MacVim/MMBackend.h
src/MacVim/MMBackend.m
src/MacVim/gui_macvim.m