From e210faa676dfed82280e4a9c5618459a12abdfaa Mon Sep 17 00:00:00 2001 From: Xavier Morel Date: Tue, 2 Jul 2019 09:49:18 +0200 Subject: [PATCH] [FIX] base: don't overwrite existing extensions The point was to fix files attachments without an extension, potentially appending to existing extensions was not a smart idea. See #34299, 5eb15c01b556620c77c0f7327494d4bf3117d115 --- odoo/addons/base/ir/ir_http.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/odoo/addons/base/ir/ir_http.py b/odoo/addons/base/ir/ir_http.py index c01e6d4a4ea..d991023d73b 100644 --- a/odoo/addons/base/ir/ir_http.py +++ b/odoo/addons/base/ir/ir_http.py @@ -321,8 +321,9 @@ class IrHttp(models.AbstractModel): mimetype = guess_mimetype(base64.b64decode(content), default=default_mimetype) # extension + _, existing_extension = os.path.splitext(filename) extension = mimetypes.guess_extension(mimetype) - if extension and not filename.endswith(extension): + if not existing_extension and extension and not filename.endswith(extension): filename = "%s%s" % (filename, extension) headers += [('Content-Type', mimetype), ('X-Content-Type-Options', 'nosniff')]