# HG changeset patch # User Ludovic Chabant # Date 1423672273 28800 # Node ID 137bcd498ef9d88f6a49fd92d39b543ce22ee15f # Parent 016d42c23ba9b81031de26eeac9c64069b65fafc serve: Fix a bug where empty route metadata is not the same as invalid route. Some routes can capture no metadata at all, like for example when `foo/%path:slug%` is capturing URL `foo`. The route is still valid, so it returns an empty dictionary. It's not the same as returning `None`, which means "no match". diff -r 016d42c23ba9 -r 137bcd498ef9 piecrust/serving.py --- a/piecrust/serving.py Wed Feb 11 08:29:09 2015 -0800 +++ b/piecrust/serving.py Wed Feb 11 08:31:13 2015 -0800 @@ -414,7 +414,7 @@ res = [] for route in routes: metadata = route.matchUri(uri) - if metadata: + if metadata is not None: res.append((route, metadata)) return res