Sophie

Sophie

distrib > Fedora > 13 > i386 > media > updates-src > by-pkgid > 4fe0eac35e20eb2d09b83f78a19ab835 > files > 16

gwibber-3.0.0.1-2.fc13.src.rpm

diff -up gwibber-3.0.0.1/gwibber/microblog/plugins/twitter/gtk/twitter/__init__.py.catch_error gwibber-3.0.0.1/gwibber/microblog/plugins/twitter/gtk/twitter/__init__.py
--- gwibber-3.0.0.1/gwibber/microblog/plugins/twitter/gtk/twitter/__init__.py.catch_error	2011-04-05 17:06:50.000000000 -0400
+++ gwibber-3.0.0.1/gwibber/microblog/plugins/twitter/gtk/twitter/__init__.py	2011-05-12 13:31:09.380655567 -0400
@@ -4,6 +4,7 @@ from oauth import oauth
 
 from gtk import Builder
 from gwibber.microblog.util import resources
+from gwibber import error
 import gettext
 from gettext import gettext as _
 if hasattr(gettext, 'bind_textdomain_codeset'):
@@ -68,7 +69,21 @@ class AccountWidget(gtk.VBox):
 
     request.sign_request(sigmeth, self.consumer, token=None)
 
-    tokendata = urllib2.urlopen(request.http_url, request.to_postdata()).read()
+    try:
+        tokendata = urllib2.urlopen(request.http_url, request.to_postdata()).read()
+    except urllib2.HTTPError, e:
+        http_error = error.GwibberErrorService()
+        http_error.ShowDialog(message='HTTP error trying to get twitter OAuth tokendata (%s)' % (e.code), title='Uh oh. Twitter FAIL WHALE!', type='network')
+        return
+    except urllib2.URLError, e:
+        url_error = error.GwibberErrorService()
+        url_error.ShowDialog(message='URL error trying to get twitter OAuth tokendata (%s)' % (e.reason), title='Uh oh. Twitter FAIL WHALE!', type='network')
+        return
+    except Exception:
+        unknown_error = error.GwibberErrorService()
+        unknown_error.ShowDialog(message='An unknown error occurred trying to get twitter OAuth tokendata.', title='Uh oh. Twitter FAIL WHALE!', type='network')
+        return
+
     self.token = oauth.OAuthToken.from_string(tokendata)
 
     url = "http://api.twitter.com/oauth/authorize?oauth_token=" + self.token.key