[arch-commits] Commit in deluge/trunk (PKGBUILD fix_freeze.patch)
Ionut Biru
ibiru at archlinux.org
Thu May 13 21:51:24 UTC 2010
Date: Thursday, May 13, 2010 @ 17:51:24
Author: ibiru
Revision: 80228
upgpkg: deluge 1.2.3-6
fixes hangs when closing deluge
Added:
deluge/trunk/fix_freeze.patch
Modified:
deluge/trunk/PKGBUILD
------------------+
PKGBUILD | 10 +++++--
fix_freeze.patch | 73 +++++++++++++++++++++++++++++++++++++++++++++++++++++
2 files changed, 80 insertions(+), 3 deletions(-)
Modified: PKGBUILD
===================================================================
--- PKGBUILD 2010-05-13 18:06:31 UTC (rev 80227)
+++ PKGBUILD 2010-05-13 21:51:24 UTC (rev 80228)
@@ -4,7 +4,7 @@
pkgname=deluge
pkgver=1.2.3
-pkgrel=5
+pkgrel=6
pkgdesc="A bittorrent client written with python and pygtk"
arch=('i686' 'x86_64')
url="http://deluge-torrent.org/"
@@ -15,15 +15,19 @@
'pygtk: needed for gtk ui'
'librsvg: needed for gtk ui'
'python-mako: needed for web ui')
-source=(http://download.deluge-torrent.org/source/${pkgname}-${pkgver}.tar.bz2 deluged deluged.conf.d deluge-web)
+source=(http://download.deluge-torrent.org/source/${pkgname}-${pkgver}.tar.bz2 deluged deluged.conf.d deluge-web
+ fix_freeze.patch)
install=deluge.install
backup=(etc/conf.d/deluged)
md5sums=('f1dbc8734c1881b115b98f572e523a4d' '7d5790eeb14cd0b47d1bb3e0a19c9935'
- '332d23fe0d21ce92b494efd73322856c' '6c913ec7322eaa60494ac9d53103005f')
+ '332d23fe0d21ce92b494efd73322856c' '6c913ec7322eaa60494ac9d53103005f'
+ '09af9b6badccb2fd5d24f8cbe9a109a7')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
+ patch -Np1 -i "${srcdir}/fix_freeze.patch" || return 1
+
python setup.py build || return 1
python setup.py install --prefix=/usr --root="${pkgdir}" --optimize=1 || return 1
Added: fix_freeze.patch
===================================================================
--- fix_freeze.patch (rev 0)
+++ fix_freeze.patch 2010-05-13 21:51:24 UTC (rev 80228)
@@ -0,0 +1,73 @@
+diff --git a/deluge/ui/gtkui/connectionmanager.py b/deluge/ui/gtkui/connectionmanager.py
+index 554c570..3b9ddf4 100644
+--- a/deluge/ui/gtkui/connectionmanager.py
++++ b/deluge/ui/gtkui/connectionmanager.py
+@@ -99,12 +99,16 @@ class ConnectionManager(component.Component):
+
+ self.config = ConfigManager("hostlist.conf.1.2", DEFAULT_CONFIG)
+
++ self.running = False
++
+ # Component overrides
+ def start(self):
+ pass
+
+ def stop(self):
+- pass
++ # Close this dialog when we are shutting down
++ if self.running:
++ self.connection_manager.response(gtk.RESPONSE_CLOSE)
+
+ def shutdown(self):
+ pass
+diff --git a/deluge/ui/gtkui/gtkui.py b/deluge/ui/gtkui/gtkui.py
+index 255622a..4856986 100644
+--- a/deluge/ui/gtkui/gtkui.py
++++ b/deluge/ui/gtkui/gtkui.py
+@@ -167,7 +167,7 @@ class GtkUI(object):
+ self.gnome_prog = gnome.init("Deluge", deluge.common.get_version())
+ self.gnome_client = gnome.ui.master_client()
+ def on_die(*args):
+- gtk.main_quit()
++ reactor.stop()
+ self.gnome_client.connect("die", on_die)
+ log.debug("GNOME session 'die' handler registered!")
+ except Exception, e:
+@@ -180,7 +180,7 @@ class GtkUI(object):
+ def win_handler(ctrl_type):
+ log.debug("ctrl_type: %s", ctrl_type)
+ if ctrl_type in (CTRL_CLOSE_EVENT, CTRL_SHUTDOWN_EVENT):
+- gtk.main_quit()
++ reactor.stop()
+ return 1
+ SetConsoleCtrlHandler(win_handler)
+
+diff --git a/deluge/ui/gtkui/mainwindow.py b/deluge/ui/gtkui/mainwindow.py
+index ad33fd0..1153b1e 100644
+--- a/deluge/ui/gtkui/mainwindow.py
++++ b/deluge/ui/gtkui/mainwindow.py
+@@ -46,6 +46,7 @@ from deluge.ui.client import client
+ import deluge.component as component
+ from deluge.configmanager import ConfigManager
+ from deluge.ui.gtkui.ipcinterface import process_args
++from twisted.internet import reactor
+
+ import deluge.common
+ import common
+@@ -152,7 +153,7 @@ class MainWindow(component.Component):
+ return self.main_glade
+
+ def quit(self):
+- gtk.main_quit()
++ reactor.stop()
+
+ def load_window_state(self):
+ x = self.config["window_x_pos"]
+@@ -238,7 +239,6 @@ class MainWindow(component.Component):
+
+ def on_newversionavailable_event(self, new_version):
+ if self.config["show_new_releases"]:
+- from twisted.internet import reactor
+ from deluge.ui.gtkui.new_release_dialog import NewReleaseDialog
+ reactor.callLater(5.0, NewReleaseDialog().show, new_version)
+
\ No newline at end of file
More information about the arch-commits
mailing list