ignore curses failures during termination (#1035503)
This commit is contained in:
parent
e79ca3a91a
commit
5033dd8b94
44
iotop-0.6-noendcurses.patch
Normal file
44
iotop-0.6-noendcurses.patch
Normal file
@ -0,0 +1,44 @@
|
|||||||
|
diff -up iotop-0.6/iotop/ui.py.noendcurses iotop-0.6/iotop/ui.py
|
||||||
|
--- iotop-0.6/iotop/ui.py.noendcurses 2014-12-03 17:50:38.941430261 +0100
|
||||||
|
+++ iotop-0.6/iotop/ui.py 2014-12-03 17:51:40.108064465 +0100
|
||||||
|
@@ -488,10 +488,14 @@ class IOTopUI(object):
|
||||||
|
self.win.refresh()
|
||||||
|
|
||||||
|
def run_iotop_window(win, options):
|
||||||
|
+ global terminating
|
||||||
|
+ terminating = False
|
||||||
|
if options.batch:
|
||||||
|
signal.signal(signal.SIGPIPE, signal.SIG_DFL)
|
||||||
|
else:
|
||||||
|
def clean_exit(*args, **kwargs):
|
||||||
|
+ global terminating
|
||||||
|
+ terminating = True
|
||||||
|
sys.exit(0)
|
||||||
|
signal.signal(signal.SIGINT, clean_exit)
|
||||||
|
signal.signal(signal.SIGTERM, clean_exit)
|
||||||
|
@@ -499,6 +503,7 @@ def run_iotop_window(win, options):
|
||||||
|
process_list = ProcessList(taskstats_connection, options)
|
||||||
|
ui = IOTopUI(win, process_list, options)
|
||||||
|
ui.run()
|
||||||
|
+ terminating = True
|
||||||
|
|
||||||
|
def run_iotop(options):
|
||||||
|
try:
|
||||||
|
@@ -520,6 +525,17 @@ Please do not file bugs on iotop about t
|
||||||
|
sys.exit(1)
|
||||||
|
else:
|
||||||
|
raise
|
||||||
|
+ except curses.error as e:
|
||||||
|
+ stre = str(e)
|
||||||
|
+ if terminating and stre.find('ERR')>=0 and (
|
||||||
|
+ stre.find('nocbreak()')>=0 or stre.find('endwin()')>=0
|
||||||
|
+ ):
|
||||||
|
+ pass
|
||||||
|
+ # endwin and nocbreak can cause error (and raise hard to catch
|
||||||
|
+ # exception) if iotop was running in the terminal and that
|
||||||
|
+ # terminal got closed while iotop was still running
|
||||||
|
+ else:
|
||||||
|
+ raise
|
||||||
|
|
||||||
|
#
|
||||||
|
# Profiling
|
@ -1,7 +1,7 @@
|
|||||||
%{!?python_sitelib: %global python_sitelib %(%{__python} -c "from distutils.sysconfig import get_python_lib; print get_python_lib()")}
|
%{!?python_sitelib: %global python_sitelib %(%{__python} -c "from distutils.sysconfig import get_python_lib; print get_python_lib()")}
|
||||||
Name: iotop
|
Name: iotop
|
||||||
Version: 0.6
|
Version: 0.6
|
||||||
Release: 3%{?dist}
|
Release: 4%{?dist}
|
||||||
Summary: Top like utility for I/O
|
Summary: Top like utility for I/O
|
||||||
|
|
||||||
Group: Applications/System
|
Group: Applications/System
|
||||||
@ -9,6 +9,9 @@ License: GPLv2+
|
|||||||
URL: http://guichaz.free.fr/iotop/
|
URL: http://guichaz.free.fr/iotop/
|
||||||
Source0: http://guichaz.free.fr/iotop/files/%{name}-%{version}.tar.bz2
|
Source0: http://guichaz.free.fr/iotop/files/%{name}-%{version}.tar.bz2
|
||||||
|
|
||||||
|
# rhbz#1035503
|
||||||
|
Patch1: iotop-0.6-noendcurses.patch
|
||||||
|
|
||||||
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
|
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
|
||||||
|
|
||||||
BuildArch: noarch
|
BuildArch: noarch
|
||||||
@ -17,6 +20,7 @@ Requires: python
|
|||||||
|
|
||||||
%prep
|
%prep
|
||||||
%setup
|
%setup
|
||||||
|
%patch1 -p1 -b .noendcurses
|
||||||
|
|
||||||
%build
|
%build
|
||||||
%{__python} setup.py build
|
%{__python} setup.py build
|
||||||
@ -45,6 +49,9 @@ rm -rf $RPM_BUILD_ROOT
|
|||||||
%{python_sitelib}/*
|
%{python_sitelib}/*
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Wed Dec 03 2014 Michal Hlavinka <mhlavink@redhat.com> - 0.6-4
|
||||||
|
- ignore curses failures during termination (#1035503)
|
||||||
|
|
||||||
* Sat Jun 07 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.6-3
|
* Sat Jun 07 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.6-3
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user