[uim-commit] r1028 - in branches/r5rs: . uim
tkng at freedesktop.org
tkng at freedesktop.org
Mon Jul 25 10:52:39 EST 2005
Author: tkng
Date: 2005-07-24 17:52:37 -0700 (Sun, 24 Jul 2005)
New Revision: 1028
Modified:
branches/r5rs/
branches/r5rs/uim/uim.c
Log:
r1028 at t42 (orig r1027): tkng | 2005-07-25 09:27:12 +0900
* uim/uim.c:
-(uim_quit): Return if uim_quit already called.
Property changes on: branches/r5rs
___________________________________________________________________
Name: svk:merge
- fb73e508-85ea-0310-95c3-a85c473e0941:/trunk:1004
+ fb73e508-85ea-0310-95c3-a85c473e0941:/trunk:1027
Modified: branches/r5rs/uim/uim.c
===================================================================
--- branches/r5rs/uim/uim.c 2005-07-25 00:27:12 UTC (rev 1027)
+++ branches/r5rs/uim/uim.c 2005-07-25 00:52:37 UTC (rev 1028)
@@ -58,6 +58,7 @@
struct uim_im *uim_im_array;
int uim_nr_im;
static int uim_initialized;
+static int uim_quiting;
void
uim_set_preedit_cb(uim_context uc,
@@ -670,9 +671,11 @@
{
int i;
- if (!uim_initialized) {
+ if (!uim_initialized || uim_quiting) {
return;
}
+ /* Some multithreaded applications calls uim_quit bursty. */
+ uim_quiting = 1;
/* release still active contexts */
for (i = 0; i < CONTEXT_ARRAY_SIZE; i++) {
@@ -686,4 +689,5 @@
free(uim_last_client_encoding);
uim_last_client_encoding = NULL;
uim_initialized = 0;
+ uim_quiting = 0;
}
More information about the uim-commit
mailing list