Package: reportbug Version: 4.5 Severity: normal Tags: patch Hi,
Here is a patch to allow the user using a mua exiting with error to be warned and to re-edit the message before trying to resend it. The user also can choose to simpy exit. Bye, Carl Chenet -- Package-specific info: ** Environment settings: DEBEMAIL="[email protected]" DEBFULLNAME="Carl Chenet" INTERFACE="text" ** /home/chaica/.reportbugrc: reportbug_version "4.5" mode novice ui text smtphost "smtp.free.fr" -- System Information: Debian Release: squeeze/sid APT prefers unstable APT policy: (500, 'unstable') Architecture: i386 (i686) Kernel: Linux 2.6.26-1-686 (SMP w/1 CPU core) Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8) Shell: /bin/sh linked to /bin/bash Versions of packages reportbug depends on: ii apt 0.7.21 Advanced front-end for dpkg ii python 2.5.4-2 An interactive high-level object-o ii python-reportbug 4.5 Python modules for interacting wit reportbug recommends no packages. Versions of packages reportbug suggests: pn debconf-utils <none> (no description available) ii debsums 2.0.44 verification of installed package pn dlocate <none> (no description available) ii exim4 4.69-9 metapackage to ease Exim MTA (v4) ii exim4-daemon-light [mail-tran 4.69-9 lightweight Exim MTA (v4) daemon ii file 5.00-1 Determines file type using "magic" ii gnupg 1.4.9-4 GNU privacy guard - a free PGP rep pn python-gnome2-extras <none> (no description available) pn python-gtk2 <none> (no description available) pn python-urwid <none> (no description available) pn python-vte <none> (no description available) -- no debconf information
>From 6757073f006798ab325d2f91ea40f5015afdd3b0 Mon Sep 17 00:00:00 2001 From: chaica <[email protected]> Date: Sun, 2 Aug 2009 17:01:29 +0200 Subject: [PATCH] detect errors returned by the mailer --- reportbug/submit.py | 22 +++++++++++++++++++++- reportbug/ui/text_ui.py | 3 ++- 2 files changed, 23 insertions(+), 2 deletions(-) diff --git a/reportbug/submit.py b/reportbug/submit.py index de74950..b04cfb8 100644 --- a/reportbug/submit.py +++ b/reportbug/submit.py @@ -435,7 +435,27 @@ def send_report(body, attachments, mua, fromaddr, sendto, ccaddr, bccaddr, ewrite("Spawning %s...\n", bit or mua) if '%s' not in mua: mua += ' %s' - ui.system(mua % commands.mkarg(filename)[1:]) + returnvalue = 0 + succeeded = False + while not succeeded: + returnvalue = ui.system(mua % commands.mkarg(filename)[1:]) + if returnvalue != 0: + ewrite("Mutt users should be aware it is mandatory to edit the draft before sending.\n") + mtitle = 'Sending the report has failed; What now?' + mopts = 'Eq' + moptsdesc = {'e' : 'Edit the message.', + 'q' : 'Quit reportbug;Will save your report for a next use.'} + x = ui.select_options(mtitle, mopts, moptsdesc) + if x == 'q': + failed = True + fh, msgname = TempFile(prefix=tfprefix) + fh.write(message) + fh.close() + ewrite('Original write failed, wrote bug report to %s\n', msgname) + succeeded = True + else: + succeeded = True + elif not failed and (using_sendmail or smtphost): if kudos: ewrite('\nMessage sent to: %s\n', sendto) diff --git a/reportbug/ui/text_ui.py b/reportbug/ui/text_ui.py index 450d7c3..a632db8 100644 --- a/reportbug/ui/text_ui.py +++ b/reportbug/ui/text_ui.py @@ -74,7 +74,8 @@ def system(cmdline): x = os.getcwd() except OSError: os.chdir('/') - os.system(cmdline) + returnvalue = os.system(cmdline) + return returnvalue def indent_wrap_text(text, starttext='', indent=0, linelen=None): """Wrapper for textwrap.fill to the existing API.""" -- 1.6.2.3
_______________________________________________ Reportbug-maint mailing list [email protected] http://lists.alioth.debian.org/mailman/listinfo/reportbug-maint
