From 77ca51f0892ec62d357e099d5c2a91e580e35383 Mon Sep 17 00:00:00 2001 From: Christophe Monniez Date: Mon, 6 Nov 2017 16:59:54 +0100 Subject: [PATCH] [FIX] base: set mimetype on js and css assets On MS Windows, the mimetypes module relies on the Windows Registry to guess mimetypes. As a consequence, when generating assets bundle for javascript files, the mime type of js files may be wrong. In that particular case, the Odoo user is facing an empty web page. This commit enforce 'application/javascript' for js assets when they are saved as ir_attachment in the database. --- odoo/addons/base/ir/ir_qweb/assetsbundle.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/odoo/addons/base/ir/ir_qweb/assetsbundle.py b/odoo/addons/base/ir/ir_qweb/assetsbundle.py index f2221e9f7cd..9137e10212a 100644 --- a/odoo/addons/base/ir/ir_qweb/assetsbundle.py +++ b/odoo/addons/base/ir/ir_qweb/assetsbundle.py @@ -201,12 +201,15 @@ class AssetsBundle(object): return self.env['ir.attachment'].sudo().browse(attachment_ids) def save_attachment(self, type, content, inc=None): + assert type in ('js', 'css') ira = self.env['ir.attachment'] fname = '%s%s.%s' % (self.name, ('' if inc is None else '.%s' % inc), type) + mimetype = 'application/javascript' if type == 'js' else 'text/css' values = { 'name': "/web/content/%s" % type, 'datas_fname': fname, + 'mimetype' : mimetype, 'res_model': 'ir.ui.view', 'res_id': False, 'type': 'binary',