[FIX] *: replace werkzeug's Response by odoo's Response
*: base, http_routing, mass_mailing, web, web_editor, website_slides In some situations `werkzeug.wrappers.Response` are used instead of `odoo.http.Reponse` that extends it. This is a problem because since [1] the calls to `set_cookie` expect it to accept the `cookie_type` parameter, which is not the case in the base werkzeug implementation. This commit replaces the `werkzeug.wrappers.Response` by `odoo.http.Response`. [1]: https://github.com/odoo/odoo/commit/2cbda6c98ee947cea1d06c09880eee8c758304a8 closes odoo/odoo#112827 X-original-commit: 28da08292b7028575e628c5ad846fc05d30498f2 Signed-off-by: Julien Castiaux (juc) <juc@odoo.com>
This commit is contained in:
@@ -23,7 +23,7 @@ from odoo import api, models, exceptions, tools, http
|
||||
from odoo.addons.base.models import ir_http
|
||||
from odoo.addons.base.models.ir_http import RequestUID
|
||||
from odoo.addons.base.models.ir_qweb import QWebException
|
||||
from odoo.http import request
|
||||
from odoo.http import request, Response
|
||||
from odoo.osv import expression
|
||||
from odoo.tools import config, ustr, pycompat
|
||||
|
||||
@@ -656,7 +656,7 @@ class IrHttp(models.AbstractModel):
|
||||
except Exception:
|
||||
code, html = 418, request.env['ir.ui.view']._render_template('http_routing.http_error', values)
|
||||
|
||||
response = werkzeug.wrappers.Response(html, status=code, content_type='text/html;charset=utf-8')
|
||||
response = Response(html, status=code, content_type='text/html;charset=utf-8')
|
||||
cls._post_dispatch(response)
|
||||
return response
|
||||
|
||||
|
||||
Reference in New Issue
Block a user