diff piecrust/serving.py @ 231:137bcd498ef9

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".
author Ludovic Chabant <ludovic@chabant.com>
date Wed, 11 Feb 2015 08:31:13 -0800
parents a951cd4ef361
children e534d2bc657c
line wrap: on
line diff
--- 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