Author: ek.kato
Date: Tue Dec 11 23:27:41 2007
New Revision: 5055
Modified:
trunk/xim/ximserver.cpp
Log:
* xim/ximserver.cpp (InputContext::review_im) : Fix segfault upon
IM toggle with incompatible encoding.
Modified: trunk/xim/ximserver.cpp
==============================================================================
--- trunk/xim/ximserver.cpp (original)
+++ trunk/xim/ximserver.cpp Tue Dec 11 23:27:41 2007
@@ -517,8 +517,12 @@
free(mLocaleName);
mLocaleName = locale;
} else {
- if (!is_locale_included(engine_locales, client_locale))
- changeContext(prev_engine);
+ if (!is_locale_included(engine_locales, client_locale)) {
+ clear();
+ uim_switch_im(mUc, prev_engine);
+ free(mEngineName);
+ mEngineName = strdup(prev_engine);
+ }
}
free(prev_engine);
}