Fix ibus-daemon deadlock in engineproxy.c.
How to reproduce the deadlock on a desktop Linux like Ubuntu Maverick:
1. Add 20 seconds sleep in the beginning of the main() function of an engine (e.g. ibus-engine-mozc). See http://crosbug.com/11379#c16 .
2. Set preload_engines to "mozc" using ibus-setup.
3. Start ibus-daemon.
4. press the trigger hotkey twice within the 20 seconds.
Expected:
The second trigger hotkey press cancels the bus_engine_proxy_new operation started by the first one.
Actual:
ibus-daemon freezes. Stack trace: http://crosbug.com/11379#c20
BUG=http://crosbug.com/11379
TEST=see the steps above.
Review URL: http://codereview.appspot.com/
4125053
Patch from phuang <shawn.p.huang@gmail.com>.