diff options
Diffstat (limited to 'rpms/sugar/sugar-Notify-on-not-sent-feedbacks-fix-issue-with-not-auto-resend.patch')
-rw-r--r-- | rpms/sugar/sugar-Notify-on-not-sent-feedbacks-fix-issue-with-not-auto-resend.patch | 115 |
1 files changed, 115 insertions, 0 deletions
diff --git a/rpms/sugar/sugar-Notify-on-not-sent-feedbacks-fix-issue-with-not-auto-resend.patch b/rpms/sugar/sugar-Notify-on-not-sent-feedbacks-fix-issue-with-not-auto-resend.patch new file mode 100644 index 0000000..eb93ccf --- /dev/null +++ b/rpms/sugar/sugar-Notify-on-not-sent-feedbacks-fix-issue-with-not-auto-resend.patch @@ -0,0 +1,115 @@ +From patchwork Sun Feb 6 10:52:50 2011 +Content-Type: text/plain; charset="utf-8" +MIME-Version: 1.0 +Content-Transfer-Encoding: 7bit +Subject: [sugar] Notify on not sent feedbacks; fix issue with not auto resend +Date: Sun, 06 Feb 2011 15:52:50 -0000 +From: Aleksey Lim <alsroot@activitycentral.org> +X-Patchwork-Id: 634 +Message-Id: <1296989570-2997-1-git-send-email-alsroot@activitycentral.org> +To: dextrose@lists.sugarlabs.org + +--- + src/jarabe/model/feedback_collector.py | 32 ++++++++++++++++++++------------ + 1 files changed, 20 insertions(+), 12 deletions(-) + + +diff --git a/src/jarabe/model/feedback_collector.py b/src/jarabe/model/feedback_collector.py +index 4671437..43540a0 100644 +--- a/src/jarabe/model/feedback_collector.py ++++ b/src/jarabe/model/feedback_collector.py +@@ -25,12 +25,14 @@ from email.mime.multipart import MIMEMultipart + from email.mime.application import MIMEApplication + from email.generator import Generator + from email.encoders import encode_noop ++from gettext import gettext as _ + + import gconf + import gobject + import simplejson + + from sugar import logger, feedback, util ++from jarabe import frame + + + _reports = {} +@@ -47,7 +49,7 @@ def start(host, port, auto_submit_delay): + _port = port + + if auto_submit_delay > 0: +- gobject.timeout_add_seconds(auto_submit_delay, anonymous_submit) ++ gobject.timeout_add_seconds(auto_submit_delay, anonymous_submit, True) + + + def update(bundle_id, report, log_file): +@@ -86,24 +88,26 @@ def submit(message): + 'nick': nick, + 'jabber_server': jabber, + } +- _submit(data) ++ _submit(data, False) + + +-def anonymous_submit(): ++def anonymous_submit(implicit=False): + from jarabe.journal import misc + + data = {} + client = gconf.client_get_default() + if client.get_bool('/desktop/sugar/feedback/anonymous_with_sn'): + data['serial_number'] = misc.get_xo_serial() +- _submit(data) ++ _submit(data, implicit) ++ ++ return True + + +-def _submit(data=None): ++def _submit(data, implicit): + if data: + _reports.update(data) + if is_empty(): +- return True ++ return + + logging.debug('Sending feedback report: %r', _reports) + +@@ -126,16 +130,15 @@ def _submit(data=None): + + tar.close() + +- _SubmitThread(tar_file).run() +- +- return True ++ _SubmitThread(tar_file, implicit).run() + + + class _SubmitThread(threading.Thread): + +- def __init__(self, tar_file): ++ def __init__(self, tar_file, implicit): + threading.Thread.__init__(self) + self._tar_file = tar_file ++ self._implicit = implicit + + def run(self): + try: +@@ -151,11 +154,16 @@ class _SubmitThread(threading.Thread): + response = conn.getresponse() + + if response.status != 200: +- logging.error('Incorrect feedback submit: %s, %s', ++ raise Exception('Incorrect feedback submit: %s, %s', + response.status, response.read()) + + except Exception: +- logging.exception('Cannot submit feedback') ++ title = _('Cannot submit feedback') ++ msg = _('Feedback was not sent to %s:%s.') % (_host, _port) ++ if not self._implicit: ++ gobject.idle_add(lambda: ++ frame.get_view().add_message(summary=title, body=msg)) ++ logging.exception('%s: %s', title, msg) + finally: + os.unlink(self._tar_file) + self._tar_file = None |