summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDenys Vlasenko <dvlasenk@redhat.com>2011-04-27 19:39:43 +0200
committerDenys Vlasenko <dvlasenk@redhat.com>2011-04-27 19:39:43 +0200
commitc23fc7ddbee64dec63b4a2a2e91cb4c8a65babdf (patch)
treef80557b28e3eb2ac3f44aa15db7875b9ec3e4a28
parentd256c71533829299088f48fc0aa8dbfcffcd5961 (diff)
downloadabrt-c23fc7ddbee64dec63b4a2a2e91cb4c8a65babdf.tar.gz
abrt-c23fc7ddbee64dec63b4a2a2e91cb4c8a65babdf.tar.xz
abrt-c23fc7ddbee64dec63b4a2a2e91cb4c8a65babdf.zip
abrt-action-install-debuginfo: handle exception in result = downloader.download(missing). Closes bz#695452
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
-rwxr-xr-xsrc/plugins/abrt-action-analyze-core.py2
-rwxr-xr-xsrc/plugins/abrt-action-install-debuginfo.py11
-rwxr-xr-xsrc/plugins/abrt-action-list-dsos.py1
3 files changed, 11 insertions, 3 deletions
diff --git a/src/plugins/abrt-action-analyze-core.py b/src/plugins/abrt-action-analyze-core.py
index ae344681..949519cc 100755
--- a/src/plugins/abrt-action-analyze-core.py
+++ b/src/plugins/abrt-action-analyze-core.py
@@ -33,7 +33,7 @@ def error_msg(s):
def error_msg_and_die(s):
sys.stderr.write("%s\n" % s)
- exit(1)
+ os.exit(1)
def xopen(name, mode):
try:
diff --git a/src/plugins/abrt-action-install-debuginfo.py b/src/plugins/abrt-action-install-debuginfo.py
index 79c3751c..ab131f7c 100755
--- a/src/plugins/abrt-action-install-debuginfo.py
+++ b/src/plugins/abrt-action-install-debuginfo.py
@@ -28,7 +28,6 @@ def init_gettext():
try:
locale.setlocale(locale.LC_ALL, "")
except locale.Error:
- import os
os.environ['LC_ALL'] = 'C'
locale.setlocale(locale.LC_ALL, "")
gettext.bind_textdomain_codeset(GETTEXT_PROGNAME, locale.nl_langinfo(locale.CODESET))
@@ -36,6 +35,11 @@ def init_gettext():
gettext.textdomain(GETTEXT_PROGNAME)
+def error_msg_and_die(s):
+ sys.stderr.write("%s\n" % s)
+ os.exit(1)
+
+
old_stdout = -1
def mute_stdout():
if verbose < 2:
@@ -441,7 +445,10 @@ if __name__ == "__main__":
log2(missing)
print _("Coredump references %u debuginfo files, %u of them are not installed") % (len(b_ids), len(missing))
downloader = DebugInfoDownload(cache=cachedir, tmp=tmpdir)
- result = downloader.download(missing)
+ try:
+ result = downloader.download(missing)
+ except Exception, ex:
+ error_msg_and_die("Can't download debuginfos: %s", ex)
missing = filter_installed_debuginfos(b_ids, cachedir)
for bid in missing:
print _("Missing debuginfo file: %s") % bid
diff --git a/src/plugins/abrt-action-list-dsos.py b/src/plugins/abrt-action-list-dsos.py
index 1befbadc..8b8a06ab 100755
--- a/src/plugins/abrt-action-list-dsos.py
+++ b/src/plugins/abrt-action-list-dsos.py
@@ -22,6 +22,7 @@ def error_msg(s):
def error_msg_and_die(s):
sys.stderr.write("%s\n" % s)
+ os.exit(1)
def xopen(name, mode):
try: