버그 패치 모음

Sun, May 31 2020 22:58:00

libxft 메모리 누수

https://gitlab.freedesktop.org/xorg/lib/libxft/-/merge_requests/5

libx11 메모리 누수

https://gitlab.freedesktop.org/xorg/lib/libx11/-/merge_requests/102

gtk 3.24.23 GtkEntry 끝글자 버그

When clicking the mouse button on the right side of the character being composed, the last character is not committed. Also, after typing Korean, you can reproduce the bug by dragging from right to left with the mouse while there is a character being composed. And then click the left mouse button inside GtkEntry.

cc -o sample sample.c `pkg-config --cflags --libs gtk+-3.0`
#include <gtk/gtk.h>

static void
activate (GtkApplication* app,
          gpointer        user_data)
{
  GtkWidget *window;
  GtkWidget *entry;

  window = gtk_application_window_new (app);
  gtk_window_set_title (GTK_WINDOW (window), "Last character bug");
  entry = gtk_entry_new ();
  gtk_container_add   (GTK_CONTAINER (window), entry);
  gtk_widget_show_all (window);
}

int
main (int    argc,
      char **argv)
{
  GtkApplication *app;
  int status;

  app = gtk_application_new ("org.gtk.example", G_APPLICATION_FLAGS_NONE);
  g_signal_connect (app, "activate", G_CALLBACK (activate), NULL);
  status = g_application_run (G_APPLICATION (app), argc, argv);
  g_object_unref (app);

  return status;
}
hodong@nimfsoft:~ $ ./sample

(sample:1998): Pango-CRITICAL **: 02:48:49.100: pango_layout_get_cursor_pos: assertion 'index >= 0 && index <= layout->length' f
--- gtk/gtkentry.c.orig 2020-11-25 12:48:42 UTC
+++ gtk/gtkentry.c
@@ -4308,6 +4308,9 @@ gtk_entry_event (GtkWidget *widget,
   gdouble x, y;
   gint i;

+  if (event->type == GDK_BUTTON_PRESS)
+    gtk_entry_reset_im_context (GTK_ENTRY (widget));
+
   if (event->type == GDK_MOTION_NOTIFY &&
       priv->mouse_cursor_obscured &&
       event->any.window == priv->text_area)

gtk_entry_multipress_gesture_pressed(), gtk_entry_real_set_position() 여기에서 reset 했더니… 커서 위치가 안 맞더라구요. 그래서 gtk_entry_event() 에서 reset 했습니다.

https://gitlab.gnome.org/GNOME/gtk/-/merge_requests/2889

Geany

Search by entry text and preedit text

과거에 제출한 패치에 버그가 있었습니다. https://github.com/geany/geany/pull/2676
이번에 재작성하였고 아직 패치를 제출하지 않았습니다.

geany-1.38.patch

Fix compile errors

https://github.com/geany/geany/pull/3121

Reset im_context when mouse is clicked

보고 시각: 2019-06-17 09:29 GMT+9

geany 를 사용하다보면 한글 입력하다가 마우스를 클릭하면 마지막 글자가 엉뚱한데 찍히는 버그가 있습니다. 이 버그는 마우스를 클릭할 때 입력기를 리셋하지 않아서 발생하는 버그입니다. 버그 보그를 하였으나 수용되지 않았습니다.

https://github.com/geany/geany/pull/2197
https://sourceforge.net/p/scintilla/bugs/2111/