| adm | Find | login register |
| siyuan joined: 2012-01-04 posted: 13 promoted: bookmarked: 紐西蘭 |
問題的細節不太清除,應該是一種 race condition 吧。當 KDE 啟動時,第一個啟動的 X 程式是 ksplashqml,這是顯示進度用的。這時 Qt 會載入一些 plugin,其中包括 gcin 的 plugin。然而 gcin 的 qt5-im plugin 執行到 gcin_im_client_open(display) 時,ksplashqml 就被卡死在這了。 QGcinPlatformInputContext::QGcinPlatformInputContext()
{
dbg("QGcinPlatformInputContext::QGcinPlatformInputContext() \n");
QPlatformNativeInterface *native = QGuiApplication::platformNativeInterface();
if(!native)
return;
Display *display = static_cast<Display *>(native->nativeResourceForWindow("display", NULL));
if (!(gcin_ch = gcin_im_client_open(display))) {
perror("cannot open gcin_ch");
dbg("gcin_im_client_open error\n");
return;
}
dbg("QGcinPlatformInputContext succ\n");
}
目前我找到的解決方案有兩個:
不知道哪種方法比較正確? |
| adm | Find | login register |