[FIX] double-load on successful login

Session#session_restore is automatically called when the client
session is started, and it performs an RPC call. This RPC call is
checked and leads to the opening of the login form iif the user is not
currently logged in (does not have a valid session).

Due to the behavior of Session#rpc_ajax, this failure on grounds of
invalid session leads to the restore continuation being stored for
deferred execution once the user logs in.

Issue is that both Session#session_login and Session#session_restore
call Session#on_session_valid which tries to load all modules. As a
result and because the '_modules_loaded' flag is only set five billion
years after 'load_modules' is called both calls will try to load all
modules in parallel, leading to double downloading and execution of
all JS and CSS files coming from module data (including translation
files).

bzr revid: xmo@openerp.com-20111003090709-1izso4hrbzk91sf3
This commit is contained in:
Xavier Morel
2011-10-03 11:07:09 +02:00
parent 013e01a52b
commit 03e842f672
-2
View File
@@ -486,8 +486,6 @@ openerp.web.Session = openerp.web.CallbackEnabled.extend( /** @lends openerp.web
self.user_context = result.context;
self.db = result.db;
self.session_save();
if (self.uid)
self.on_session_valid();
return true;
}).then(success_callback);
},