Gwibber: URLError nach Suspend/Resume
Gwibber ist praktisch: Man kann durchgehend mehr oder weniger interessante Nachrichten ins Netz der Netze schicken oder schnell entsprechende Antworten erhalten. Schade nur dass sich zumindest hier unter Arch Linux der Gwibber-Client nach erfolgten SuspendToRAM/Resume zweimalig erfolglos versucht zu verbinden und dann mit einem “URLError” aufgibt – Gwibber-Restart nötig.

Zumindest hier
schreibe ich weil ich diesen Fehler bisher nirgends sonst erwähnt finden konnte, keine Ahnung ob er nur hier bei mir auftritt.
Wie auch immer, scheinbar versucht sich Gwibber zu verbinden während der Network-Manager noch keine Verbindung zum Wlan-Router hat (befindet sich zu dieser Zeit noch im Aufbau), das versucht Gwibber laut Fehlermeldung scheinbar genau zwei Mal innerhalb einer Minute und gibt dann auf, auch ein erneutes Klicken auf Refresh
führt nicht zum Erfolg.
Ein Trial-and-error-Versuch war jetzt einfach den Verbindungs-Timeount zu erhöhen was in Python recht einfach geht: Die socket
-Bibliothek importieren und mittels socket.setdefaulttimeout(60)
den Timeout von 0 auf 60 Sekunden erhöhen – funktioniert hier in ersten Tests scheinbar. Passendes Patch-Diff für gwibber/microblog/twitter.py
(Gwibber 1.2.0) hierzu):
Edit: 17:50 – der Patch scheint doch nicht zu funktionieren :(
--- twitter-old.py 2009-06-14 10:30:23.000000000 +0200
+++ twitter.py 2009-06-14 10:25:39.000000000 +0200
@@ -7,7 +7,7 @@
"""
from . import can, support
-import urllib2, urllib, base64, re, simplejson
+import urllib2, urllib, base64, re, simplejson, socket
import gettext
_ = gettext.lgettext
@@ -138,6 +138,7 @@
class Client:
def __init__(self, acct):
self.account = acct
+ socket.setdefaulttimeout(60)
def send_enabled(self):
return self.account["send_enabled"] and \