From 735b6abf469dc493cf63f6bbdf076586b249e8e2 Mon Sep 17 00:00:00 2001 From: pgjones Date: Sat, 15 May 2021 16:39:09 +0100 Subject: [PATCH] Fix inject_url_defaults for nested blueprints It now takes account of the fact that blueprints can be nested. --- src/flask/app.py | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/flask/app.py b/src/flask/app.py index 38bd303b..995d2fa6 100644 --- a/src/flask/app.py +++ b/src/flask/app.py @@ -1783,8 +1783,10 @@ class Flask(Scaffold): """ funcs: t.Iterable[URLDefaultCallable] = self.url_default_functions[None] if "." in endpoint: - bp = endpoint.rsplit(".", 1)[0] - funcs = chain(funcs, self.url_default_functions[bp]) + bps = reversed(endpoint.split(".")[:-1]) + for bp in bps: + funcs = chain(funcs, self.url_default_functions[bp]) + for func in funcs: func(endpoint, values)