lock on Browser (snif)

This commit is contained in:
Romain Bignon 2010-04-27 01:14:22 +02:00
commit 2650c32b24

View file

@ -25,6 +25,7 @@ import re
import time
from logging import warning, error, debug
from copy import copy
from threading import RLock
from weboob.tools.parsers import get_parser
@ -160,12 +161,19 @@ class BaseBrowser(mechanize.Browser):
self.last_update = 0.0
self.username = username
self.password = password
self.lock = RLock()
if self.password:
try:
self.home()
except BrowserUnavailable:
pass
def __enter__(self):
self.lock.acquire()
def __exit__(self, t, v, tb):
self.lock.release()
def pageaccess(func):
def inner(self, *args, **kwargs):
if not self.page or self.password and not self.page.is_logged():