| 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 |