summaryrefslogtreecommitdiff
path: root/repoze/bfg/traversal.py
diff options
context:
space:
mode:
authorChris McDonough <chrism@agendaless.com>2009-06-22 00:12:45 +0000
committerChris McDonough <chrism@agendaless.com>2009-06-22 00:12:45 +0000
commit6ecdbc409d2109a9e7fc5367c64067f0400f07cc (patch)
tree37a01b7f6d9c9fe10f8201bf67d89dfd480e9072 /repoze/bfg/traversal.py
parent352276d69311cbd2ec4985b4e809b607102c2dab (diff)
downloadpyramid-6ecdbc409d2109a9e7fc5367c64067f0400f07cc.tar.gz
pyramid-6ecdbc409d2109a9e7fc5367c64067f0400f07cc.tar.bz2
pyramid-6ecdbc409d2109a9e7fc5367c64067f0400f07cc.zip
- Adding ``*path_info`` to a route no longer changes the PATH_INFO for
a request that matches using URL dispatch. This feature was only there to service the ``repoze.bfg.wsgi.wsgiapp2`` decorator and it did it wrong; use ``*subpath`` instead now. - The interface generation performed for named request factories had the wrong base classes.
Diffstat (limited to 'repoze/bfg/traversal.py')
-rw-r--r--repoze/bfg/traversal.py7
1 files changed, 4 insertions, 3 deletions
diff --git a/repoze/bfg/traversal.py b/repoze/bfg/traversal.py
index 576679853..16ab7c9f4 100644
--- a/repoze/bfg/traversal.py
+++ b/repoze/bfg/traversal.py
@@ -496,10 +496,11 @@ class ModelGraphTraverser(object):
if 'bfg.routes.matchdict' in environ:
matchdict = environ['bfg.routes.matchdict']
path = matchdict.get('traverse', '/')
- subpath = filter(None, matchdict.get('subpath', '').split('/'))
+ subpath = matchdict.get('subpath', '')
+ subpath = tuple(filter(None, subpath.split('/')))
else:
# this request did not match a Routes route
- subpath = []
+ subpath = ()
try:
path = environ['PATH_INFO']
except KeyError:
@@ -514,7 +515,7 @@ class ModelGraphTraverser(object):
vroot_idx = len(vroot_path)
path = vroot_path_string + path
- path = list(traversal_path(path))
+ path = traversal_path(path)
traversed = []