Package: release.debian.org Severity: normal User: release.debian.org@packages.debian.org Usertags: pu Dear release team, Due to defective patch to replace deprecated "gdk_window_get_pointer" in `gitg` the latter started to crash and lost most of its drag'n'drop functionality. Also it becomes very noisy on console during mouse movements: (gitg:26390): Gdk-CRITICAL **: gdk_window_get_device_position: assertion `GDK_IS_DEVICE (device)' failed Fortunately user provided corrected patch that fixed all the run time problems as far as I can see. With your permission I'd very much like to fix this mess in Wheezy. Please find attached .diff file with all the changes. Please advise if it is OK to upload. Thank you. Regards, Dmitry Smirnov GPG key : 4096R/53968D1B
diff --git a/debian/changelog b/debian/changelog index 4eb9d50..b616917 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,10 @@ +gitg (0.2.4-1.1+deb7u1) stable; urgency=low + + * Replaced incorrect "ftbfs" patch to fix run-time crashes + and drag'n'drop functionality (Closes: #705886, #674001). + + -- Dmitry Smirnov <onlyjob@debian.org> Thu, 06 Jun 2013 18:56:48 +1000 + gitg (0.2.4-1.1) unstable; urgency=low * Non-maintainer upload. diff --git a/debian/patches/ftbfs b/debian/patches/ftbfs deleted file mode 100644 index 340c578..0000000 --- a/debian/patches/ftbfs +++ /dev/null @@ -1,27 +0,0 @@ -Description: Replaced deprecated gdk_window_get_pointer API. -Author: Jiang Wu <masterwujiang@gmail.com> -Bug-Debian: http://bugs.debian.org/666232 -Last-Update: 2012-04-29 - ---- gitg-0.2.4.orig/gitg/gitg-dnd.c -+++ gitg-0.2.4/gitg/gitg-dnd.c -@@ -513,7 +513,7 @@ vertical_autoscroll (GitgDndData *data) - gint offset; - gfloat value; - -- gdk_window_get_pointer (gtk_tree_view_get_bin_window (data->tree_view), NULL, &y, NULL); -+ gdk_window_get_device_position (gtk_tree_view_get_bin_window (data->tree_view), GDK_SOURCE_MOUSE, NULL, &y, NULL); - gtk_tree_view_convert_bin_window_to_tree_coords (data->tree_view, 0, y, NULL, &y); - - gtk_tree_view_get_visible_rect (data->tree_view, &visible_rect); ---- gitg-0.2.4.orig/gitg/gitg-commit-view.c -+++ gitg-0.2.4/gitg/gitg-commit-view.c -@@ -967,7 +967,7 @@ get_info_at_pointer (GitgCommitView *vie - /* Get where the pointer really is. */ - GdkWindow *win = gtk_text_view_get_window (textview, GTK_TEXT_WINDOW_TEXT); - -- gdk_window_get_pointer (win, &x, &y, NULL); -+ gdk_window_get_device_position (win, GDK_SOURCE_MOUSE, &x, &y, NULL); - - width = gdk_window_get_width (win); - height = gdk_window_get_height (win); diff --git a/debian/patches/ftbfs.patch b/debian/patches/ftbfs.patch new file mode 100644 index 0000000..5a750a5 --- /dev/null +++ b/debian/patches/ftbfs.patch @@ -0,0 +1,39 @@ +Description: Replaced deprecated gdk_window_get_pointer API. +Author: Rodolfo <rodolforg@gmail.com> +Bug-Debian: http://bugs.debian.org/666232 +Bug-Debian: http://bugs.debian.org/705886 +Bug-Debian: http://bugs.debian.org/674001 +Last-Update: 2013-06-06 + +--- a/gitg/gitg-dnd.c ++++ b/gitg/gitg-dnd.c +@@ -512,9 +512,13 @@ + gint y; + gint offset; + gfloat value; + +- gdk_window_get_pointer (gtk_tree_view_get_bin_window (data->tree_view), NULL, &y, NULL); ++ GdkWindow *win = gtk_tree_view_get_bin_window (data->tree_view); ++ GdkDeviceManager *device_manager = gdk_display_get_device_manager(gdk_window_get_display(win)); ++ GdkDevice *pointer = gdk_device_manager_get_client_pointer (device_manager); ++ gdk_window_get_device_position (win, pointer, NULL, &y, NULL); ++ + gtk_tree_view_convert_bin_window_to_tree_coords (data->tree_view, 0, y, NULL, &y); + + gtk_tree_view_get_visible_rect (data->tree_view, &visible_rect); + +--- a/gitg/gitg-commit-view.c ++++ b/gitg/gitg-commit-view.c +@@ -966,9 +966,11 @@ + + /* Get where the pointer really is. */ + GdkWindow *win = gtk_text_view_get_window (textview, GTK_TEXT_WINDOW_TEXT); + +- gdk_window_get_pointer (win, &x, &y, NULL); ++ GdkDeviceManager *device_manager = gdk_display_get_device_manager(gdk_window_get_display(win)); ++ GdkDevice *pointer = gdk_device_manager_get_client_pointer (device_manager); ++ gdk_window_get_device_position (win, pointer, &x, &y, NULL); + + width = gdk_window_get_width (win); + height = gdk_window_get_height (win); + diff --git a/debian/patches/series b/debian/patches/series index 758d0b8..21bba92 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -1,3 +1,3 @@ 0001-Change-Categories-to-Development-RevisionControl.patch 0002-libgitg-make-a-static-library.patch -ftbfs +ftbfs.patch
Attachment:
signature.asc
Description: This is a digitally signed message part.