summaryrefslogtreecommitdiffstats
path: root/src/ibusbus.c
diff options
context:
space:
mode:
authorPeng Huang <phuang@phuang.nay.redhat.com>2009-02-13 14:10:57 +0800
committerPeng Huang <phuang@phuang.nay.redhat.com>2009-02-13 14:10:57 +0800
commitef5485bd1e53fb2fbce13827928f7eecb2ea75ef (patch)
tree44a6b673ec4641bffbfa2095a044fca9bffb3ba4 /src/ibusbus.c
parent748b6b1f6c181a72daadbf137f1c29d77b499f2a (diff)
downloadibus-ef5485bd1e53fb2fbce13827928f7eecb2ea75ef.tar.gz
ibus-ef5485bd1e53fb2fbce13827928f7eecb2ea75ef.tar.xz
ibus-ef5485bd1e53fb2fbce13827928f7eecb2ea75ef.zip
Flush connection to make sure IBus.Exit has been sent before process exiting.
Diffstat (limited to 'src/ibusbus.c')
-rw-r--r--src/ibusbus.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/ibusbus.c b/src/ibusbus.c
index 7b6af04..a567359 100644
--- a/src/ibusbus.c
+++ b/src/ibusbus.c
@@ -639,6 +639,9 @@ ibus_bus_exit (IBusBus *bus,
{
g_assert (IBUS_IS_BUS (bus));
+ IBusBusPrivate *priv;
+ priv = IBUS_BUS_GET_PRIVATE (bus);
+
gboolean result;
result = ibus_bus_call (bus,
IBUS_SERVICE_IBUS,
@@ -648,6 +651,8 @@ ibus_bus_exit (IBusBus *bus,
G_TYPE_BOOLEAN, &restart,
G_TYPE_INVALID,
G_TYPE_INVALID);
+ ibus_connection_flush (priv->connection);
+
return result;
}