[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#688729: unblock xpra/0.3.11+dfsg-1



retitle 688729 unblock xpra/0.3.11+dfsg-1

--

Please unblock package "xpra".

    unblock xpra/0.3.11+dfsg-1

All upstream 0.3.x releases are bugfix-only.

Upstream changelog as below:

  v0.3.11 (2012-10-05)
  ======================
  -- fix bencoder to properly handle dicts with non-string keys
  -- take shortcut if there is nothing to send
  -- fix password file handling: exceptions and ignore carriage returns

On top of that our changhes as below (full diff is attached):

  xpra (0.3.11+dfsg-1) unstable; urgency=low

    * New upstream release.
    * New backported patch to fix crash on pop-up tooltip windows.
    * VCS links are updated for new repository at collab-maint.

To my knowledge we didn't have any regressions since 0.3.2 (in testing)
so all the bugs that we fixed in "unstable" are present in 0.3.2 as well.

In our recent discussion upstream expressed concerns regarding 0.3.2.
In his own words:

  "0.3.2 is full of holes"

  "Just occurred to me that 0.3.2 won't even connect to a 0.7.0 server
   due to one of those bugs (or the other way around - cannot remember)"

So we have a very buggy version in testing which is notorious for poor 
compatibility, crashes, problems with clipboard, undocumented Xdummy support 
which is critical for resolve #1 (most popular) support request i.e. "menus 
opened off-screen" etc. 
We could file few RC bugs to ourselves but I hope that won't be necessary.

Please unblock. 

Thanks in advance,
Dmitry.

Attachment: signature.asc
Description: This is a digitally signed message part.

diff --git a/debian/changelog b/debian/changelog
index e2c7feb..2100220 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,5 +1,13 @@
+xpra (0.3.11+dfsg-1) unstable; urgency=low
+
+  * New upstream release.
+  * New backported patch to fix crash on pop-up tooltip windows.
+  * VCS links are updated for new repository at collab-maint.
+
+ -- Dmitry Smirnov <onlyjob@member.fsf.org>  Tue, 09 Oct 2012 13:13:52 +1100
+
 xpra (0.3.10+dfsg-1) unstable; urgency=low
 
   * New upstream release.
 
  -- أحمد المحمودي (Ahmed El-Mahmoudy) <aelmahmoudy@sabily.org>  Wed, 26 Sep 2012 16:03:44 +0200
diff --git a/debian/control b/debian/control
index dc75373..2e0fb2f 100644
--- a/debian/control
+++ b/debian/control
@@ -18,12 +18,12 @@ Build-Depends: cython (>> 0.14.0),
                python-all-dev (>= 2.6.6-2),
                python-gobject-dev,
                python-gtk2-dev
 Standards-Version: 3.9.3
 Homepage: http://xpra.org/
-Vcs-Svn: svn://svn.debian.org/python-apps/packages/xpra/trunk/
-Vcs-Browser: http://svn.debian.org/viewsvn/python-apps/packages/xpra/trunk/
+Vcs-Git: git://anonscm.debian.org/collab-maint/xpra.git
+Vcs-Browser: http://anonscm.debian.org/gitweb/?p=collab-maint/xpra.git
 DM-Upload-Allowed: yes
 
 Package: xpra
 Architecture: any
 Depends: ${misc:Depends},
diff --git a/debian/patches/r1854-fix-crash.patch b/debian/patches/r1854-fix-crash.patch
new file mode 100644
index 0000000..396603d
--- /dev/null
+++ b/debian/patches/r1854-fix-crash.patch
@@ -0,0 +1,56 @@
+Last-Update: 2012-10-08
+Author: Dmitry Smirnov <onlyjob@member.fsf.org>
+Origin: https://www.xpra.org/svn/Xpra/trunk@1854
+Forwarded: not-needed,backported
+Bug-Xpra: https://www.xpra.org/trac/ticket/191
+Description: fix crash on pop-up tooltip windows
+
+--- a/xpra/server.py
++++ b/xpra/server.py
+@@ -2227,30 +2227,34 @@
+                 self.keys_pressed[keycode] = keyname
+                 xtest_fake_key(gtk.gdk.display_get_default(), keycode, True)
+         self._key_repeat(wid, True, keyname, keyval, keycode, modifiers, self.key_repeat_interval)
+ 
++    def _process_mouse_common(self, proto, wid, pointer, modifiers):
++        self._make_keymask_match(modifiers, self.xkbmap_mod_pointermissing)
++        window = self._id_to_window.get(wid)
++        if not window:
++            log("_process_mouse_common() invalid window id: %s", wid)
++            return
++        def raise_and_move():
++            self._desktop_manager.raise_window(window)
++            self._move_pointer(pointer)
++        trap.call(raise_and_move)
++
+     def _process_button_action(self, proto, packet):
+-        (wid, button, pressed, pointer, modifiers) = packet[1:6]
+-        self._make_keymask_match(modifiers, ignored_modifier_keynames=self.xkbmap_mod_pointermissing)
+-        self._desktop_manager.raise_window(self._id_to_window[wid])
+-        self._move_pointer(pointer)
++        wid, button, pressed, pointer, modifiers = packet[1:6]
++        self._process_mouse_common(proto, wid, pointer, modifiers)
+         try:
+-            trap.call_unsynced(xtest_fake_button,
++            trap.call_synced(xtest_fake_button,
+                                gtk.gdk.display_get_default(),
+                                button, pressed)
+         except XError:
+             log.warn("Failed to pass on (un)press of mouse button %s"
+                      + " (perhaps your Xvfb does not support mousewheels?)",
+                      button)
+ 
+     def _process_pointer_position(self, proto, packet):
+-        (wid, pointer, modifiers) = packet[1:4]
+-        self._make_keymask_match(modifiers, ignored_modifier_keynames=self.xkbmap_mod_pointermissing)
+-        if wid in self._id_to_window:
+-            self._desktop_manager.raise_window(self._id_to_window[wid])
+-            self._move_pointer(pointer)
+-        else:
+-            log("_process_pointer_position() invalid window id: %s", wid)
++        wid, pointer, modifiers = packet[1:4]
++        self._process_mouse_common(proto, wid, pointer, modifiers)
+ 
+     def _process_close_window(self, proto, packet):
+         wid = packet[1]
+         window = self._id_to_window.get(wid, None)
diff --git a/debian/patches/series b/debian/patches/series
new file mode 100644
index 0000000..17798c7
--- /dev/null
+++ b/debian/patches/series
@@ -0,0 +1 @@
+r1854-fix-crash.patch

Reply to: