Comment #25 on issue 1760 by [email protected]: CRITICAL **: xim_open:
assertion 'conn == NULL' failed
https://code.google.com/p/ibus/issues/detail?id=1760
ximxtransport.C has three instances of
status->wait_for([interval], [lambda]);
(XIM_CONNECT, XIM_OPEN, XIM_GET_IM_VALUES
Replacing each one with
status->wait([lambda]);
should do the trick. Something like the following (although, I'll bet, most
XIM clients don't have a timeout, so after causing an assert with my
client, first, starting another client, like xterm, could hang):
diff --git a/ximxtransport.C b/ximxtransport.C
index bbdb5ec..eadf6e7 100644
--- a/ximxtransport.C
+++ b/ximxtransport.C
@@ -161,7 +161,7 @@ bool ximxtransportObj::implObj::initialize()
s->conn->connectionThread->flush();
// Wait for either the connection to drop, or the response
- status->wait_for(std::chrono::seconds(10),
+ status->wait(
[]
(ximserver::base::metadata_info &m)
{
@@ -215,7 +215,7 @@ bool ximxtransportObj::implObj::initialize()
xim_open_send(locale::base::environment()->name());
s->conn->connectionThread->flush();
- status->wait_for(std::chrono::seconds(10),
+ status->wait(
[]
(ximserver::base::metadata_info &m)
{
@@ -246,7 +246,7 @@ bool ximxtransportObj::implObj::initialize()
s->conn->connectionThread->flush();
- status->wait_for(std::chrono::seconds(60),
+ status->wait(
[]
(ximserver::base::metadata_info &m)
{
@@ -286,7 +286,7 @@ bool ximxtransportObj::implObj::initialize()
s->conn->connectionThread->flush();
}
- status->wait_for(std::chrono::seconds(60),
+ status->wait(
[]
(ximserver::base::metadata_info &m)
{
--
You received this message because this project is configured to send all
issue notifications to this address.
You may adjust your notification preferences at:
https://code.google.com/hosting/settings
--
--
You received this message because you are subscribed to the Google
Groups "ibus-devel" group.
iBus project web page: http://code.google.com/p/ibus/
iBus dev group: http://groups.google.com/group/ibus-devel?hl=en
---
You received this message because you are subscribed to the Google Groups "ibus-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/d/optout.