46 lines
1.5 KiB
Diff
46 lines
1.5 KiB
Diff
From 7b170bf4e5e0240fe084166c9ca6ec4fba258dcd Mon Sep 17 00:00:00 2001
|
|
From: Hiromasa Ihara <iharahiromasa@gmail.com>
|
|
Date: Mon, 2 Oct 2023 20:14:40 +0900
|
|
Subject: [PATCH] fix: avoid DeprecationWarning 'werkzeug.urls.url_decode' is
|
|
deprecated (#746)
|
|
|
|
---
|
|
src/flask_login/utils.py | 8 ++++----
|
|
1 file changed, 4 insertions(+), 4 deletions(-)
|
|
|
|
diff --git a/src/flask_login/utils.py b/src/flask_login/utils.py
|
|
index c3c46846..45a7e279 100644
|
|
--- a/src/flask_login/utils.py
|
|
+++ b/src/flask_login/utils.py
|
|
@@ -3,6 +3,8 @@
|
|
from hashlib import sha512
|
|
from urllib.parse import urlparse
|
|
from urllib.parse import urlunparse
|
|
+from urllib.parse import parse_qs
|
|
+from urllib.parse import urlencode
|
|
|
|
from flask import current_app
|
|
from flask import g
|
|
@@ -11,8 +13,6 @@
|
|
from flask import session
|
|
from flask import url_for
|
|
from werkzeug.local import LocalProxy
|
|
-from werkzeug.urls import url_decode
|
|
-from werkzeug.urls import url_encode
|
|
|
|
from .config import COOKIE_NAME
|
|
from .config import EXEMPT_METHODS
|
|
@@ -123,11 +123,11 @@ def login_url(login_view, next_url=None, next_field="next"):
|
|
return base
|
|
|
|
parsed_result = urlparse(base)
|
|
- md = url_decode(parsed_result.query)
|
|
+ md = parse_qs(parsed_result.query)
|
|
md[next_field] = make_next_param(base, next_url)
|
|
netloc = current_app.config.get("FORCE_HOST_FOR_REDIRECTS") or parsed_result.netloc
|
|
parsed_result = parsed_result._replace(
|
|
- netloc=netloc, query=url_encode(md, sort=True)
|
|
+ netloc=netloc, query=urlencode(md, doseq=True)
|
|
)
|
|
return urlunparse(parsed_result)
|
|
|