summaryrefslogtreecommitdiff
path: root/addons/web/controllers
diff options
context:
space:
mode:
authorOlivier Dony <odo@odoo.com>2018-09-05 14:42:09 +0200
committerOlivier Dony <odo@odoo.com>2018-09-05 14:47:55 +0200
commitfec74a6da564c69b9c601874f0a65ec35facb48d (patch)
tree9fa7035bd7183ed20140e14b35729533518168c6 /addons/web/controllers
parent9aa750bffcd31eb8503e92396df0113d317e1565 (diff)
[FIX] web: make server-wide modules ordered again
Rev. 279d92869391ac9f860d2070a7b92693fffee687 forced `server_wide_modules` to include 'base' and 'web', because both contain controllers that need to be always loaded. However the patch used a set() that randomized the order of the list, when combined with Python 3.5's randomized hash function. This is turn could cause the checksum of asset bundles (web.assets_backend) to randomly vary, which could cause rapid assets recycling and errors.
Diffstat (limited to 'addons/web/controllers')
-rw-r--r--addons/web/controllers/main.py6
1 files changed, 3 insertions, 3 deletions
diff --git a/addons/web/controllers/main.py b/addons/web/controllers/main.py
index 930dde340ed..ff3224fafbc 100644
--- a/addons/web/controllers/main.py
+++ b/addons/web/controllers/main.py
@@ -178,11 +178,11 @@ def module_installed_bypass_session(dbname):
return {}
def module_boot(db=None):
- server_wide_modules = {'base', 'web'} | set(odoo.conf.server_wide_modules)
- serverside = []
+ server_wide_modules = odoo.conf.server_wide_modules or []
+ serverside = ['base', 'web']
dbside = []
for i in server_wide_modules:
- if i in http.addons_manifest:
+ if i in http.addons_manifest and i not in serverside:
serverside.append(i)
monodb = db or db_monodb()
if monodb: