rpms/im-sdk/FC-3 iiimgcf-fix-crash-r2421-153020.patch, NONE, 1.1 leif-canna-close-csconv-r2306.patch, NONE, 1.1 leif-canna-fix-missing-start-end-func-r2458-154372.patch, NONE, 1.1 leif-canna-silence-status-not-enabled-message-r2379-135284.patch, NONE, 1.1 leif-unit-U+000A-r2484-132936.patch, NONE, 1.1 xiiimp-fix-default-le-r2435-139811.patch, NONE, 1.1 xiiimp-xft-statusarea-141298.patch, NONE, 1.1 im-sdk.spec, 1.98, 1.99

fedora-cvs-commits at redhat.com fedora-cvs-commits at redhat.com
Wed Jul 27 10:04:04 UTC 2005


Author: tagoh

Update of /cvs/dist/rpms/im-sdk/FC-3
In directory cvs.devel.redhat.com:/tmp/cvs-serv4357

Modified Files:
	im-sdk.spec 
Added Files:
	iiimgcf-fix-crash-r2421-153020.patch 
	leif-canna-close-csconv-r2306.patch 
	leif-canna-fix-missing-start-end-func-r2458-154372.patch 
	leif-canna-silence-status-not-enabled-message-r2379-135284.patch 
	leif-unit-U+000A-r2484-132936.patch 
	xiiimp-fix-default-le-r2435-139811.patch 
	xiiimp-xft-statusarea-141298.patch 
Log Message:
* Wed Jul 27 2005 Akira TAGOH <tagoh at redhat.com>
- xiiimp-xft-statusarea-141298.patch: applied to fix segfaulting in some xim
  apps (Kohji Sanpei, #141298)
- iiimgcf-fix-crash-r2421-153020.patch: applied to fix a crash issue. (#153020)
- Use %%{_target_platform} instead of %%{_arch}-%%{host_vendor}-%%{_host_os}
  to run update-gtk-immodule properly.
- define iiim_user macro and use them instead of hardcoded user name.
- make sure htt_server owns unix domain socket after upgrade.
- leif-canna-close-csconv-r2306.patch: applied to close the csconv module
  when the session is closed.
- leif-canna-silence-status-not-enabled-message-r2379-135284.patch: silence
  the status has not been enabled yet message on syslog. (#135284)
- leif-canna-fix-missing-start-end-func-r2458-154372.patch: applied to get
  the current IM status working properly. (#154372)
- marked le.xml.conf as %%ghost at %%files list.
- xiiimp-fix-default-le-r2435-139811.patch: applied to find the proper LE for
  current locale as well as IIIMF's gtk immodule does. (#139811)
- leif-unit-U000A-r2484-132936.patch: applied to fix not committing an enter
  with U000A on UNICODE-HEX. (#132936)

iiimgcf-fix-crash-r2421-153020.patch:
 gtkimcontextiiim.c |    6 +++---
 1 files changed, 3 insertions(+), 3 deletions(-)

--- NEW FILE iiimgcf-fix-crash-r2421-153020.patch ---
2005-04-01  Akira TAGOH  <tagoh at redhat.com>

	* gtkimcontextiiim.c (iiim_keylist_free): fixed a crash issue when it's
	destroying. (ref. RH#153020)

Index: gtkimcontextiiim.c
===================================================================
--- iiimgcf/gtkimcontextiiim.c	(リビジョン 2420)
+++ iiimgcf/gtkimcontextiiim.c	(リビジョン 2421)
@@ -1592,10 +1592,10 @@
 static void
 iiim_keylist_free (GtkIMContextIIIM * context_iiim)
 {
-  GSList *tmp;
-  for (tmp = context_iiim->keylist; tmp; tmp = g_slist_next (tmp))
+  while (context_iiim->keylist != NULL)
     {
-      GdkEventKey *ev = (GdkEventKey *) tmp->data;
+      GdkEventKey *ev = (GdkEventKey *)context_iiim->keylist->data;
+
       context_iiim->keylist = g_slist_remove (context_iiim->keylist, ev);
       gdk_event_free ((GdkEvent *) ev);
     }

leif-canna-close-csconv-r2306.patch:
 CannaLE.c |   23 ++++++++++++++++++-----
 1 files changed, 18 insertions(+), 5 deletions(-)

--- NEW FILE leif-canna-close-csconv-r2306.patch ---
2005-03-17  Motonobu Ichimura  <famao at openi18n.org>

	* CannaLE.c (if_canna_CloseIF): close csconv.

Index: leif/canna/CannaLE.c
===================================================================
--- leif/canna/CannaLE.c	(リビジョン 2305)
+++ leif/canna/CannaLE.c	(リビジョン 2306)
@@ -294,9 +294,9 @@
   AUX Object:
 */
 
-IMObjectDescriptorStruct *objects = NULL;
+static IMObjectDescriptorStruct *objects = NULL;
 
-void
+static void
 init_objects()
 {
     IMObjectDescriptorStruct *l;
@@ -316,7 +316,7 @@
     l->encoding = NULL;
 }
 
-void
+static void
 free_objects()
 {
     free(objects);
@@ -1766,7 +1766,6 @@
 if_GetIfInfo(IMArgList args, int num_args)
 {
     int i;
-    init_objects();
     for (i = 0; i < num_args; i++, args++) {
         switch (args->id) {
 	case IF_VERSION:
@@ -1783,7 +1782,7 @@
 	    break;
 	case IF_SUPPORTED_OBJECTS:
 	    if (!objects)
-		init_objects();
+		init_objects(); /* FIXME causes memory leak */
 	    args->value = (IMArgVal) objects;
 	    break;
 	case IF_NEED_THREAD_LOCK:
@@ -1817,6 +1816,20 @@
 Bool
 if_canna_CloseIF(iml_if_t *If)
 {
+
+    int st = csconv_status();
+
+    if (st == CSC_LOADED) {
+        csc_close(csconv_cd);
+        dlclose(csc_handle);
+
+        csc_handle =  NULL;
+        csc_open = NULL;
+        csc_conv = NULL;
+        csc_close = NULL;
+        csc_open_locale = NULL;
+        csconv_cd = NULL;
+    }
     return True;
 }
 

leif-canna-fix-missing-start-end-func-r2458-154372.patch:
 CannaLE.c |   10 ++++++++++
 ChangeLog |    6 ++++++
 2 files changed, 16 insertions(+)

--- NEW FILE leif-canna-fix-missing-start-end-func-r2458-154372.patch ---
Index: leif/canna/CannaLE.c
===================================================================
--- leif/canna/CannaLE.c	(リビジョン 2457)
+++ leif/canna/CannaLE.c	(リビジョン 2458)
@@ -1416,6 +1416,8 @@
     CannaLESession *pcls = canna_session_data(s);
 
     if (pcls->conversion_start == True) {
+	iml_inst *lp;
+
 	pcls->conversion_start = False;
 	canna_change_mode(s, CANNA_MODE_AlphaMode);
 	canna_status_draw(s);
@@ -1423,6 +1425,9 @@
 	canna_lookup_choice_done(s);
 	canna_preedit_done(s);
 	canna_aux_done(s);
+
+        lp = s->If->m->iml_make_end_conversion_inst(s);
+	s->If->m->iml_execute(s, &lp);
     }
 }
 
@@ -1432,6 +1437,11 @@
     CannaLESession *pcls = canna_session_data(s);
 
     if (pcls->conversion_start == False) {
+	iml_inst *lp;
+
+        lp = s->If->m->iml_make_start_conversion_inst(s);
+	s->If->m->iml_execute(s, &lp);
+
 	pcls->conversion_start = True;
 	if (canna_get_current_mode(s) == CANNA_MODE_AlphaMode) {
 	    canna_change_mode(s, CANNA_MODE_HenkanMode);
Index: leif/canna/ChangeLog
===================================================================
--- leif/canna/ChangeLog	(リビジョン 2457)
+++ leif/canna/ChangeLog	(リビジョン 2458)
@@ -1,3 +1,9 @@
+2005-04-11  Akira TAGOH  <tagoh at redhat.com>
+
+	* CannaLE.c (canna_make_conversion_off): call
+	iml_make_end_conversion_inst().
+	(canna_make_conversion_on): call iml_make_start_conversion_inst().
+
 2005-04-05  Akira TAGOH  <tagoh at redhat.com>
 
 	* CannaLE.c (canna_status_draw): show a message at the status window

leif-canna-silence-status-not-enabled-message-r2379-135284.patch:
 CannaLE.c |    2 +-
 1 files changed, 1 insertion(+), 1 deletion(-)

--- NEW FILE leif-canna-silence-status-not-enabled-message-r2379-135284.patch ---
2005-03-24  Akira TAGOH  <tagoh at redhat.com>

	* CannaLE.c (canna_status_draw_off): fixed a problem that
	iml_make_status_start_inst wasn't actually called.

Index: leif/canna/CannaLE.c
===================================================================
--- leif/canna/CannaLE.c	(リビジョン 2378)
+++ leif/canna/CannaLE.c	(リビジョン 2379)
@@ -1113,7 +1113,7 @@
     }
     lp = s->If->m->iml_make_status_draw_inst(s, p);
     s->If->m->iml_link_inst_tail(&rrv, lp);
-    s->If->m->iml_execute(s, &lp);
+    s->If->m->iml_execute(s, &rrv);
 }
 
 void

leif-unit-U+000A-r2484-132936.patch:
 ChangeLog                       |    7 +++++++
 codepoint_im/codepoint_filter.c |   12 +++++++++++-
 leif/key_event.c                |    8 +++++++-
 3 files changed, 25 insertions(+), 2 deletions(-)

--- NEW FILE leif-unit-U+000A-r2484-132936.patch ---
Index: leif/unit/leif/key_event.c
===================================================================
--- leif/unit/leif/key_event.c	(リビジョン 2483)
+++ leif/unit/leif/key_event.c	(リビジョン 2484)
@@ -518,8 +518,14 @@
 
     if (ret == IME_NOT_USED_KEY)
 	iml_sendback_key(s, key_event);
-    else 
+    else if (ret == RETURN_KEY) {
+	key_event->keyCode = IM_VK_ENTER;
+	key_event->keyChar = 0;
+	key_event->modifier = 0;
 	le_output_ime_buffer(s, session_data->ime_buffer);
+	iml_sendback_key(s, key_event);
+    } else
+	le_output_ime_buffer(s, session_data->ime_buffer);
 
     if ((session_data->ime_buffer->deadkey_flag == IME_HOTKEY_END) && !session_data->ime_buffer->conv_flag) {
 	proc_key_switch_conversion_event(udp, s, CONVERSION_OFF, (char *)NULL);
Index: leif/unit/ChangeLog
===================================================================
--- leif/unit/ChangeLog	(リビジョン 2483)
+++ leif/unit/ChangeLog	(リビジョン 2484)
@@ -1,3 +1,10 @@
+2005-04-14  Sriram Swaminathan  <sriram.swaminathan at sun.com>
+
+	* leif/key_event.c
+	* codepoint_im/codepoint_filter.c
+
+	Fix to commit RETURN key when 0x000a is the input in UNICODE-HEX mode.
+
 2005-04-13  Jens Petersen  <petersen at redhat.com>
 
 	* ctim/Makefile.am (moduledir): Use IM_LEIFDIR instead of IM_LOCALEDIR.
Index: leif/unit/codepoint_im/codepoint_filter.c
===================================================================
--- leif/unit/codepoint_im/codepoint_filter.c	(リビジョン 2483)
+++ leif/unit/codepoint_im/codepoint_filter.c	(リビジョン 2484)
@@ -126,6 +126,9 @@
     sprintf(tmpstr,"0%s",Preedit_Buf);
   }
   from_buf[0] = (wchar_t)strtol(tmpstr,&ret, 0);
+  if (from_buf[0] == IM_VK_ENTER) {
+    return RETURN_KEY;
+  }
   from_buf[1] = L'\0'; 
   convert_UCS4_to_UTF8(from_buf, to_buf);
   (void)strcpy((char *)Commit_Buf, (char *)to_buf);
@@ -182,7 +185,14 @@
       Preedit_Buf[Preedit_Len] = key;
       Preedit_Len += 1;
       Preedit_Buf[Preedit_Len] = '\0';
-      commit_candidate(ime_buffer, unit_table);
+      if (commit_candidate(ime_buffer, unit_table) == RETURN_KEY) {
+        Preedit_Len = 0;
+        Preedit_CaretPos = 0;
+        Input_Len = 0;
+        Input_Buf[Input_Len]='\0';
+        IME_Status |= IME_PREEDIT_AREA; 
+        return RETURN_KEY;
+      }
       Preedit_Len = 0;
       Preedit_CaretPos = 0;
       Input_Len = 0;

xiiimp-fix-default-le-r2435-139811.patch:
 ChangeLog         |    8 +++
 iiimp/iiimcfFun.c |  141 +++++++++++++++++-------------------------------------
 iiimp/iiimpIM.c   |   25 ++++++++-
 3 files changed, 76 insertions(+), 98 deletions(-)

--- NEW FILE xiiimp-fix-default-le-r2435-139811.patch ---
Index: iiimxcf/xiiimp.so/iiimp/iiimcfFun.c
===================================================================
--- iiimxcf/xiiimp.so/iiimp/iiimcfFun.c	(リビジョン 2433)
+++ iiimxcf/xiiimp.so/iiimp/iiimcfFun.c	(リビジョン 2435)
@@ -989,8 +989,9 @@
   st = iiimcf_create_attr (&attr);
   if (st != IIIMF_STATUS_SUCCESS) 
     return;
-  iiimcf_attr_put_ptr_value (attr, IIIMCF_ATTR_INPUT_LANGUAGE,
-                             iiim_lang);
+  if (iiim_lang)
+      iiimcf_attr_put_ptr_value (attr, IIIMCF_ATTR_INPUT_LANGUAGE,
+				 iiim_lang);
   st = iiimcf_context_set_attr(XIC_IIIMP(ic, context), attr);
   iiimcf_destroy_attr (attr);
   if (st != IIIMF_STATUS_SUCCESS)
@@ -1036,100 +1037,58 @@
 {
   int i;
   IIIMF_status st;
-  char *langid;
+  char *langid, *lang, *p;
   int n_lang;
   IIIMCF_language *lang_list;
   XimCommon im = (XimCommon)ic->core.im;
 
+  if (input_language == NULL)
+      return NULL;
+  else
+      lang = strdup(input_language);
+
   lang_list = iiim_get_languages (im, &n_lang);
   if (lang_list)
     {
-      int match_len;
-      char *p;
       for (i = 0; i < n_lang; i++)
 	{
-	  st = iiimcf_get_language_id (lang_list[i],
-				       (const char **)&langid);
+	  st = iiimcf_get_language_id(lang_list[i], (const char **)&langid);
 	  if (st != IIIMF_STATUS_SUCCESS)
 	    continue;
-	  if (!strncmp (langid, input_language, strlen (langid)))
-	    {
-	      Xfree (ic->current_language);
-	      ic->current_language = strdup (langid);
-	      return lang_list[i];
-	    }
+	  if (!strcmp(lang, langid))
+	    goto found_language;
 	}
+      /* try to find the supported language again without charset locale */
+      p = strchr(lang, '@');
+      if (p)
+	*p = 0;
+      p = strchr(lang, '.');
+      if (p)
+	*p = 0;
 
-      if (exact_match)
-	return NULL;
-      /*
-	cannot find exact match, so try a fuzzy matching
-	for <lang_region> part of the input_language
-      */
-      if (strstr (input_language, ".") == NULL &&
-	  strstr (input_language, "_") == NULL)
+      for (i = 0; i < n_lang; i++)
 	{
-	  for (i = 0; i < n_lang; i++)
-	    {
-	      st = iiimcf_get_language_id (lang_list[i],
-					   (const char **)&langid);
-	      if (st != IIIMF_STATUS_SUCCESS)
-		continue;
-	      if (!strncmp (langid, input_language, strlen (input_language)))
-		{
-		  Xfree (ic->current_language);
-		  ic->current_language = strdup (langid);
-		  return lang_list[i];
-		}
-	    }
+	  st = iiimcf_get_language_id(lang_list[i], (const char **)&langid);
+	  if (st != IIIMF_STATUS_SUCCESS)
+	    continue;
+	  if (!strcmp(lang, langid))
+	    goto found_language;
 	}
-      else
+      /* finally try to take care of the locale, such as en */
+      p = strchr(lang, '_');
+      if (p)
+	*p = 0;
+
+      for (i = 0; i < n_lang; i++)
 	{
-	  if ((p = strstr (input_language, ".")) != NULL)
-	    {
-	      match_len = p - input_language;
-	      if (match_len > 0)
-		{
-		  for (i = 0; i < n_lang; i++)
-		    {
-		      st = iiimcf_get_language_id (lang_list[i],
-						   (const char **)&langid);
-		      if (st != IIIMF_STATUS_SUCCESS)
-			continue;
-		      if (!strncmp (langid, input_language, match_len))
-			{
-			  Xfree (ic->current_language);
-			  ic->current_language = strdup (langid);
-			  return lang_list[i];
-			}
-		    }
-		}
-	    }
-	  /*
-	    cannot find a match yet, so try another fuzzy matching
-	    for only <lang> part of the input_language
-	  */
-	  if ((p = strstr (input_language, "_")) != NULL)
-	    {
-	      match_len = p - input_language;
-	      if (match_len > 0)
-		{
-		  for (i = 0; i < n_lang; i++)
-		    {
-		      st = iiimcf_get_language_id (lang_list[i],
-						   (const char **)&langid);
-		      if (st != IIIMF_STATUS_SUCCESS)
-			continue;
-		      if (!strncmp (langid, input_language, match_len))
-			{
-			  Xfree (ic->current_language);
-			  ic->current_language = strdup (langid);
-			  return lang_list[i];
-			}
-		    }
-		}
-	    }
+	  st = iiimcf_get_language_id(lang_list[i], (const char **)&langid);
+	  if (st != IIIMF_STATUS_SUCCESS)
+	    continue;
+	  if (!strcmp(lang, langid))
+	    goto found_language;
 	}
+      free(lang);
+
       /*
 	still cannot find a match. Just take one for "en" as
 	a default.
@@ -1141,25 +1100,17 @@
 	  if (st != IIIMF_STATUS_SUCCESS)
 	    continue;
 	  if (!strncmp (langid, "en", 2))
-	    {
-	      Xfree (ic->current_language);
-	      ic->current_language = strdup (langid);
-	      return lang_list[i];
-	    }
+	    goto found_language;
 	}
-      /*
-	I've given up. Use whatever the 1st in the list as the fallback.
-      */
-      st = iiimcf_get_language_id (lang_list[0],
-				   (const char **)&langid);
-      if (st == IIIMF_STATUS_SUCCESS)
-	{
-	  Xfree (ic->current_language);
-	  ic->current_language = strdup (langid);
-	  return lang_list[0];
-	}
     }
+
   return NULL;
+
+ found_language:;
+  Xfree(ic->current_language);
+  ic->current_language = strdup(langid);
+
+  return lang_list[i];
 }
 
 /* Local Variables: */
Index: iiimxcf/xiiimp.so/iiimp/iiimpIM.c
===================================================================
--- iiimxcf/xiiimp.so/iiimp/iiimpIM.c	(リビジョン 2433)
+++ iiimxcf/xiiimp.so/iiimp/iiimpIM.c	(リビジョン 2435)
@@ -360,6 +360,7 @@
     char *lang;
     char *p;
     IIIMCF_language *plangs;
+    IIIMF_status st;
 
     if (XIM_IIIMP(im, primary_locale)) {
 	lang = strdup(XIM_IIIMP(im, primary_locale));
@@ -373,7 +374,9 @@
 	!= IIIMF_STATUS_SUCCESS)
 	return NULL;
     for (i = 0; i < n; i++) {
-	iiimcf_get_language_id(plangs[i], &ll);
+	st = iiimcf_get_language_id(plangs[i], &ll);
+	if (st != IIIMF_STATUS_SUCCESS)
+	    continue;
 	if (strcmp(lang, ll) == 0)
 	    return plangs[i];
     }
@@ -386,7 +389,9 @@
 	*p = 0;
 
     for (i = 0; i < n; i++) {
-	iiimcf_get_language_id(plangs[i], &ll);
+	st = iiimcf_get_language_id(plangs[i], &ll);
+	if (st != IIIMF_STATUS_SUCCESS)
+	    continue;
 	if (strcmp(lang, ll) == 0)
 	    return plangs[i];
     }
@@ -396,12 +401,26 @@
 	*p = 0;
 
     for (i = 0; i < n; i++) {
-	iiimcf_get_language_id(plangs[i], &ll);
+	st = iiimcf_get_language_id(plangs[i], &ll);
+	if (st != IIIMF_STATUS_SUCCESS)
+	    continue;
 	if (strcmp(lang, ll) == 0)
 	    return plangs[i];
     }
     free(lang);
 
+      /*
+	still cannot find a match. Just take one for "en" as
+	a default.
+      */
+    for (i = 0; i < n; i++) {
+	st = iiimcf_get_language_id (plangs[i], &ll);
+	if (st != IIIMF_STATUS_SUCCESS)
+	    continue;
+	if (strncmp (ll, "en", 2) == 0)
+	    return plangs[i];
+    }
+
     return NULL;
 }
 
Index: iiimxcf/xiiimp.so/ChangeLog
===================================================================
--- iiimxcf/xiiimp.so/ChangeLog	(リビジョン 2433)
+++ iiimxcf/xiiimp.so/ChangeLog	(リビジョン 2435)
@@ -1,3 +1,11 @@
+2005-04-04  Akira TAGOH  <tagoh at redhat.com>
+
+	* iiimp/iiimpIM.c (get_IM_language): try to find the en LEs too like
+	iiimgcf does.
+
+	* iiimp/iiimcfFun.c (ic_initialize_with_input_language): check NULL.
+	(get_input_language): return a proper language only. otherwise NULL.
+
 2005-04-01  Motonobu Ichimura  <famao at openi18n.org>
 
 	* iiimp/iiimpIM.c (getIMLangName): fix memory leak.

xiiimp-xft-statusarea-141298.patch:
 guiIMSts.c |   32 +++++++++++++++++---------------
 1 files changed, 17 insertions(+), 15 deletions(-)

--- NEW FILE xiiimp-xft-statusarea-141298.patch ---
diff -ur im-sdk-r12_1-svn2002.org/iiimxcf/xiiimp.so/iiimp/guiIMSts.c im-sdk-r12_1-svn2002/iiimxcf/xiiimp.so/iiimp/guiIMSts.c
--- im-sdk-r12_1-svn2002.org/iiimxcf/xiiimp.so/iiimp/guiIMSts.c	2005-01-27 13:35:26.000000000 +0900
+++ im-sdk-r12_1-svn2002/iiimxcf/xiiimp.so/iiimp/guiIMSts.c	2005-02-09 20:25:35.845650072 +0900
@@ -519,21 +519,23 @@
 						   XIM_IIIMP (ic->core.im, default_font_name));
     status->need_free_fontset = True;
   }
-  if (!status->xftdraw) {
-    status->xftdraw = XftDrawCreate(ic->core.im->core.display,
-                                    (Drawable) status->window,
-                                    DefaultVisual(ic->core.im->core.display, 
-                                    DefaultScreen(ic->core.im->core.display)),
-                                    DefaultColormap(ic->core.im->core.display, 
-                                    DefaultScreen(ic->core.im->core.display)));
-  }
-  if (!status->xftfont) {
-    status->xftfont = XFactoryCreateDefaultXftFont(ic->core.im->core.display);
-  }
-  status->xftcolor.color.red = 0;
-  status->xftcolor.color.blue = 0;
-  status->xftcolor.color.green = 0;
-  status->xftcolor.color.alpha = 0xffff;
+  if (!(ic->core.input_style & XIMStatusArea)) {
+    if (!status->xftdraw) {
+      status->xftdraw = XftDrawCreate(ic->core.im->core.display,
+				      (Drawable) status->window,
+				      DefaultVisual(ic->core.im->core.display, 
+						    DefaultScreen(ic->core.im->core.display)),
+				      DefaultColormap(ic->core.im->core.display, 
+						      DefaultScreen(ic->core.im->core.display)));
+    }
+    if (!status->xftfont) {
+      status->xftfont = XFactoryCreateDefaultXftFont(ic->core.im->core.display);
+    }
+    status->xftcolor.color.red = 0;
+    status->xftcolor.color.blue = 0;
+    status->xftcolor.color.green = 0;
+    status->xftcolor.color.alpha = 0xffff;
+  }
 
   return;
 }


Index: im-sdk.spec
===================================================================
RCS file: /cvs/dist/rpms/im-sdk/FC-3/im-sdk.spec,v
retrieving revision 1.98
retrieving revision 1.99
diff -u -r1.98 -r1.99
--- im-sdk.spec	14 Mar 2005 11:44:28 -0000	1.98
+++ im-sdk.spec	27 Jul 2005 10:03:38 -0000	1.99
@@ -69,6 +69,7 @@
 Patch52: iiimgcf-fix-gtk_im_context_reset-r2208.patch
 Patch53: iiimgcf-dont-always-emit-commit-signal-r2231.patch
 Patch54: iiimgcf-commit-after-reset-ic-r2235.patch
+Patch55: iiimgcf-fix-crash-r2421-153020.patch
 
 ## iiimxcf
 ## Patch70 has been committed in svn2037.
@@ -81,6 +82,8 @@
 Patch73: im-sdk-12.1-x-xft-highlight.patch
 Patch74: im-sdk-htt_xbe-crash.patch
 Patch75: xiiimp-fix-double-encoded-utf8-r2272-138618.patch
+Patch76: xiiimp-fix-default-le-r2435-139811.patch
+Patch77: xiiimp-xft-statusarea-141298.patch
 
 ## iiimcf
 Patch80: iiimcf-fix-deactivate-im-r2024.patch
@@ -118,6 +121,9 @@
 ## Patch206 has been committed in svn2050
 Patch206: leif-canna-fix-escape-from-aux.patch
 Patch207: leif-canna-fix-caret-position-r2070-136651.patch
+Patch208: leif-canna-close-csconv-r2306.patch
+Patch209: leif-canna-silence-status-not-enabled-message-r2379-135284.patch
+Patch210: leif-canna-fix-missing-start-end-func-r2458-154372.patch
 # for hangul LE
 # for NewPY LE
 # for Unit LE
@@ -130,6 +136,7 @@
 Patch355: leif-unit-sysime.cfg-Bengali-138633.patch
 Patch356: leif-unit-gu-inscriptfix-140337.patch
 Patch357: leif-unit-latin-fixes-r2060.patch
+Patch358: leif-unit-U+000A-r2484-132936.patch
 # for Sun Chinese LEs
 Patch400: im-sdk-11.4-sun-le-asia.patch
 Patch401: leif-sun-zh-disable.patch
@@ -355,6 +362,8 @@
 %define im_dir %{_libdir}/im
 %define im_includedir %{im_dir}/include
 
+%define iiim_user htt
+
 %define indic_locale bn_BD bn_IN gu_IN hi_IN kn_IN ml_IN pa_IN ta_IN te_IN
 %define iiimf_locale %{indic_locale} ja_JP ko_KR zh_CN zh_TW 
 
@@ -394,6 +403,7 @@
 %patch52 -p0 -b .gtk_im_context_reset
 %patch53 -p0 -b .dont-always-emit-commit-signal
 %patch54 -p0 -b .commit-after-reset-ic
+%patch55 -p0 -b .fix-crash
 
 ## iiimxcf
 %patch70 -p1 -b .xiiimp-warnings
@@ -402,6 +412,8 @@
 %patch73 -p1 -b .xft-highlight
 %patch74 -p1 -b .x86_64-htt_xbe-crash
 %patch75 -p0 -b .double-encoded-utf8
+%patch76 -p0 -b .default-le
+%patch77 -p0 -b .statusarea
 
 ## iiimcf
 %patch80 -p0 -b .iiimcf-deactivate-im
@@ -422,6 +434,9 @@
 %patch205 -p1 -b .canna-gcc-warnings
 %patch206 -p1 -b .canna-escape-from-aux
 %patch207 -p0 -b .canna-caret-pos
+%patch208 -p0 -b .canna-csconv
+%patch209 -p0 -b .canna-status-syslog
+%patch210 -p0 -b .canna-start-end
 
 # Hangul LE patches
 
@@ -435,6 +450,7 @@
 %patch355 -p1 -b .bn_IN
 %patch356 -p1 -b .gu_IN
 %patch357 -p0 -b .european
+%patch358 -p0 -b .U+000A
 
 # Sun Chinese LE
 ## always need to be applied to build with/without -le-asia and le-korea
@@ -696,13 +712,13 @@
 GCONF_CONFIG_SOURCE=`gconftool-2 --get-default-source` gconftool-2  --makefile-install-rule /etc/gconf/schemas/gnome-im-switcher.schemas > /dev/null
 
 %post -n iiimf-gtk
-[ -x "%{_bindir}/update-gtk-immodules" ] && %{_bindir}/update-gtk-immodules %{_arch}-%{_host_vendor}-%{_host_os}
+[ -x "%{_bindir}/update-gtk-immodules" ] && %{_bindir}/update-gtk-immodules %{_target_platform}
 [ -x "%{_bindir}/gtk-query-immodules-2.0" ] && %{_bindir}/gtk-query-immodules-2.0 > %{_sysconfdir}/gtk-2.0/gtk.immodules
 
 %{inst_xinput}
 
 %postun -n iiimf-gtk
-[ -x "%{_bindir}/update-gtk-immodules" ] && %{_bindir}/update-gtk-immodules %{_arch}-%{_host_vendor}-%{_host_os}
+[ -x "%{_bindir}/update-gtk-immodules" ] && %{_bindir}/update-gtk-immodules %{_target_platform}
 [ -x "%{_bindir}/gtk-query-immodules-2.0" ] && %{_bindir}/gtk-query-immodules-2.0 > %{_sysconfdir}/gtk-2.0/gtk.immodules
 
 if [ "$1" = 0 ]; then
@@ -711,8 +727,8 @@
 fi
 
 %pre -n iiimf-server
-if ! /usr/sbin/usermod -d %{im_dir} htt >/dev/null 2>&1; then
-  /usr/sbin/useradd htt -c "IIIMF Htt" -r -s /sbin/nologin -d %{im_dir} -M >/dev/null 2>&1
+if ! /usr/sbin/usermod -d %{im_dir} %{iiim_user} >/dev/null 2>&1; then
+  /usr/sbin/useradd %{iiim_user} -c "IIIMF Htt" -r -s /sbin/nologin -d %{im_dir} -M >/dev/null 2>&1
 fi
 
 if [ -f "%{_sysconfdir}/htt.conf" ]; then
@@ -721,6 +737,9 @@
 exit 0
 
 %post -n iiimf-server
+# make sure we own any old unix domain socket
+[ -d %{_localstatedir}/run/iiim ] && chown %{iiim_user}:%{iiim_user} -R %{_localstatedir}/run/iiim/
+
 /sbin/chkconfig --add iiim
 %{instle}default.so --default --lang en >& /dev/null || :
 
@@ -729,7 +748,7 @@
    %{uninstle}default.so >& /dev/null || :
   /sbin/service iiim stop >/dev/null 2>&1
   /sbin/chkconfig --del iiim
-  /usr/sbin/userdel htt 2>/dev/null 2>&1
+  /usr/sbin/userdel %{iiim_user} 2>/dev/null 2>&1
 fi
 
 %postun -n iiimf-server
@@ -956,7 +975,7 @@
 %endif
 
 %files -n iiimf-server
-%defattr (-, htt, htt)
+%defattr (-, %{iiim_user}, %{iiim_user})
 %dir %{_localstatedir}/run/iiim
 %dir %{_localstatedir}/log/iiim
 %defattr (-, root, root,-)
@@ -966,7 +985,7 @@
 %ghost %config(missingok,noreplace) %verify(not md5 size mtime) %{_sysconfdir}/htt.conf
 %ghost %config(missingok,noreplace) %verify(not md5 size mtime) %{_sysconfdir}/htt.conf.old
 %config(noreplace) %verify(not md5 size mtime) %{_sysconfdir}/iiim/htt.xml.conf
-%config(noreplace) %verify(not md5 size mtime) %{_sysconfdir}/iiim/le.xml.conf
+%ghost %config(noreplace) %verify(not md5 size mtime) %{_sysconfdir}/iiim/le.xml.conf
 %{_sbindir}/htt
 %{_sbindir}/htt_server
 %{_bindir}/iiimf-le-tools
@@ -1089,6 +1108,26 @@
 %endif
 
 %changelog
+* Wed Jul 27 2005 Akira TAGOH <tagoh at redhat.com>
+- xiiimp-xft-statusarea-141298.patch: applied to fix segfaulting in some xim
+  apps (Kohji Sanpei, #141298)
+- iiimgcf-fix-crash-r2421-153020.patch: applied to fix a crash issue. (#153020)
+- Use %%{_target_platform} instead of %%{_arch}-%%{host_vendor}-%%{_host_os}
+  to run update-gtk-immodule properly.
+- define iiim_user macro and use them instead of hardcoded user name.
+- make sure htt_server owns unix domain socket after upgrade.
+- leif-canna-close-csconv-r2306.patch: applied to close the csconv module
+  when the session is closed.
+- leif-canna-silence-status-not-enabled-message-r2379-135284.patch: silence
+  the status has not been enabled yet message on syslog. (#135284)
+- leif-canna-fix-missing-start-end-func-r2458-154372.patch: applied to get
+  the current IM status working properly. (#154372)
+- marked le.xml.conf as %%ghost at %%files list.
+- xiiimp-fix-default-le-r2435-139811.patch: applied to find the proper LE for
+  current locale as well as IIIMF's gtk+ immodule does. (#139811)
+- leif-unit-U+000A-r2484-132936.patch: applied to fix not committing an enter
+  with U+000A on UNICODE-HEX. (#132936)
+
 * Mon Mar 14 2005 Akira TAGOH <tagoh at redhat.com>
 - backported the patches from RHEL4
   - iiimgcf-fix-gtk_im_context-r2208.patch: applied to implement




More information about the fedora-cvs-commits mailing list