[FIX] Url mismatch redirection should only be done for GET and HEAD http verbs

bzr revid: fme@openerp.com-20140429095643-hmq1t45tgv3opyh8
This commit is contained in:
Fabien Meghazi 2014-04-29 11:56:43 +02:00
parent 42d7f69af9
commit 048c4c284b
1 changed files with 7 additions and 6 deletions

View File

@ -93,12 +93,13 @@ class ir_http(orm.AbstractModel):
except Exception:
return self._handle_exception(werkzeug.exceptions.NotFound())
generated_path = werkzeug.url_unquote_plus(path)
current_path = werkzeug.url_unquote_plus(request.httprequest.path)
if generated_path != current_path:
if request.lang != request.website.default_lang_code:
path = '/' + request.lang + path
return werkzeug.utils.redirect(path)
if request.httprequest.method in ('GET', 'HEAD'):
generated_path = werkzeug.url_unquote_plus(path)
current_path = werkzeug.url_unquote_plus(request.httprequest.path)
if generated_path != current_path:
if request.lang != request.website.default_lang_code:
path = '/' + request.lang + path
return werkzeug.utils.redirect(path)
def _serve_attachment(self):
domain = [('type', '=', 'binary'), ('url', '=', request.httprequest.path)]