Silvan Calarco
da3742ddc4
smartBackend.py: patched to raise correct exceptions, hopefully fixes pk lockups on errors [release 0.9.5-3mamba;Tue Aug 18 2015]
64 lines
2.6 KiB
Diff
64 lines
2.6 KiB
Diff
diff -Nru PackageKit-0.9.5.orig/backends/smart/smartBackend.py PackageKit-0.9.5/backends/smart/smartBackend.py
|
|
--- PackageKit-0.9.5.orig/backends/smart/smartBackend.py 2015-08-19 00:28:41.888881409 +0200
|
|
+++ PackageKit-0.9.5/backends/smart/smartBackend.py 2015-08-19 00:29:05.737801008 +0200
|
|
@@ -204,7 +204,10 @@
|
|
else:
|
|
self.status(STATUS_INSTALL)
|
|
self._packagesdict = trans.getChangeSet()
|
|
- self.ctrl.commitTransaction(trans, confirm=False)
|
|
+ try:
|
|
+ self.ctrl.commitTransaction(trans, confirm=False)
|
|
+ except smart.Error, e:
|
|
+ self.error(ERROR_PACKAGE_FAILED_TO_INSTALL, e, exit=False)
|
|
|
|
@needs_cache
|
|
def install_files(self, transaction_flags, paths):
|
|
@@ -230,7 +233,10 @@
|
|
else:
|
|
self.status(STATUS_INSTALL)
|
|
self._packagesdict = trans.getChangeSet()
|
|
- self.ctrl.commitTransaction(trans, confirm=False)
|
|
+ try:
|
|
+ self.ctrl.commitTransaction(trans, confirm=False)
|
|
+ except smart.Error, e:
|
|
+ self.error(ERROR_PACKAGE_FAILED_TO_INSTALL, e, exit=False)
|
|
|
|
@needs_cache
|
|
def remove_packages(self, transaction_flags, packageids, allow_deps, autoremove):
|
|
@@ -270,7 +276,10 @@
|
|
else:
|
|
self.status(STATUS_REMOVE)
|
|
self._packagesdict = trans.getChangeSet()
|
|
- self.ctrl.commitTransaction(trans, confirm=False)
|
|
+ try:
|
|
+ self.ctrl.commitTransaction(trans, confirm=False)
|
|
+ except smart.Error, e:
|
|
+ self.error(ERROR_PACKAGE_FAILED_TO_REMOVE, e, exit=False)
|
|
|
|
@needs_cache
|
|
def update_packages(self, transaction_flags, packageids):
|
|
@@ -299,7 +308,10 @@
|
|
else:
|
|
self.status(STATUS_UPDATE)
|
|
self._packagesdict = trans.getChangeSet()
|
|
- self.ctrl.commitTransaction(trans, confirm=False)
|
|
+ try:
|
|
+ self.ctrl.commitTransaction(trans, confirm=False)
|
|
+ except smart.Error, e:
|
|
+ self.error(ERROR_PACKAGE_FAILED_TO_INSTALL, e, exit=False)
|
|
|
|
@needs_cache
|
|
def download_packages(self, directory, packageids):
|
|
@@ -344,7 +356,10 @@
|
|
return
|
|
self.status(STATUS_UPDATE)
|
|
self._packagesdict = trans.getChangeSet()
|
|
- self.ctrl.commitTransaction(trans, confirm=False)
|
|
+ try:
|
|
+ self.ctrl.commitTransaction(trans, confirm=False)
|
|
+ except smart.Error, e:
|
|
+ self.error(ERROR_PACKAGE_FAILED_TO_INSTALL, e, exit=False)
|
|
|
|
@needs_cache
|
|
def get_updates(self, filters):
|