Posted by on the 16th of December, 2012 at 1:02 pm under 컴퓨터.  Post is not tagged.  This post has no comments.

지난번에 웹비넷으로 옮기고 테스트할 때 젠투리눅스 업데이트를 했는데 파이어폭스에서 입력기가 안마태 자판으로 설정되는 문제가 있었다. 일단 gtk.immodules에서 imhangul 목록을 내가 쓰는것만 남기고 지워서 썼는데, gtk.immodules가 업데이트 되면 자꾸 안마태 자판이 떠서 원인을 찾아봤다.

원인은 http://git.gnome.org/browse/gtk+/commit/gtk/gtkimmodule.c?id=4d7e47ddd0590a6cad1bdf5d785203e8aa9f259e 에 있었다. GTK_IM_MODULE 환경변수는 이전에는 하나만 지원했는데 : 을 구분자로 fallback을 추가할 수 있도록 바뀌었다. 그러면서 추가된 lookup_immodule 함수가 문제였다. GTK_IM_MODULE에서 설정한 context를 가지고 찾은 immodule의 첫번째 context를 return하면서 자꾸 안마태 자판이 나온 것이다.

코드는 간단히 immodule이 가지고 있는 context중에 실제 요청한 context를 return하도록 고치면 된다.


--- gtk+-2.24.12/gtk/gtkimmodule.c.orig    2012-12-14 09:42:51.500009901 +0900
+++ gtk+-2.24.12/gtk/gtkimmodule.c    2012-12-14 09:58:14.960465057 +0900
@@ -662,7 +662,16 @@
GtkIMModule *module;
module = g_hash_table_lookup (contexts_hash, *immodules_list);
if (module)
-           return module->contexts[0]->context_id;
+           {
+             int i;
+             for (i = 0; i < module->n_contexts; i++)
+               {
+                 if (strcmp (module->contexts[i]->context_id, *immodules_list) == 0)
+                   return module->contexts[i]->context_id;
+               }
+
+             return NULL;
+           }
}
immodules_list++;
}

https://bugzilla.gnome.org/show_bug.cgi?id=690247 에 리포팅 완료.

Posted by on the 16th of December, 2012 at 12:43 pm under 컴퓨터.  Post is not tagged.  This post has no comments.

gdk-pixbuf가 2.26으로 올라가더니 gnome-panel에 eclipse 아이콘 모양이 이상해졌다.

그냥 이대로 쓰다가 거슬려서 gdk-pixbuf 소스를 뒤져봤다. 원인을 찾았는데 http://git.gnome.org/browse/gdk-pixbuf/commit/gdk-pixbuf/gdk-pixbuf-loader.c?id=c62676a2843f391f32df2636d738e6333ae0318d 이 커밋이 문제였다. 이 커밋은 animated gif 때문에 추가 된건데, 난 animated gif는 별로 안쓰니까 원래대로 돌리고 했더니

이렇게 잘 나온다.

gnome bugzilla에 관련 내용이 있길래 업데이트. https://bugzilla.gnome.org/show_bug.cgi?id=686514