diff options
Diffstat (limited to 'rpms/sugar/0057-Notify-on-not-sent-feedbacks-fix-issue-with-not-auto.patch')
-rw-r--r-- | rpms/sugar/0057-Notify-on-not-sent-feedbacks-fix-issue-with-not-auto.patch | 112 |
1 files changed, 112 insertions, 0 deletions
diff --git a/rpms/sugar/0057-Notify-on-not-sent-feedbacks-fix-issue-with-not-auto.patch b/rpms/sugar/0057-Notify-on-not-sent-feedbacks-fix-issue-with-not-auto.patch new file mode 100644 index 0000000..c40fa82 --- /dev/null +++ b/rpms/sugar/0057-Notify-on-not-sent-feedbacks-fix-issue-with-not-auto.patch @@ -0,0 +1,112 @@ +From 15fd367960ee975ed58174702cd74a2d7d66396e Mon Sep 17 00:00:00 2001 +From: Aleksey Lim <alsroot@activitycentral.org> +Date: Sun, 6 Feb 2011 15:52:50 +0000 +Subject: [PATCH sugar 57/74] Notify on not sent feedbacks; fix issue with not + auto resend + +--- + 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 93fa704..e239c9a 100644 +--- a/src/jarabe/model/feedback_collector.py ++++ b/src/jarabe/model/feedback_collector.py +@@ -25,12 +25,14 @@ + 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': '', + '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 @@ def run(self): + 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 +-- +1.7.6 + |