diff options
| author | Chris McDonough <chrism@agendaless.com> | 2009-07-03 00:10:10 +0000 |
|---|---|---|
| committer | Chris McDonough <chrism@agendaless.com> | 2009-07-03 00:10:10 +0000 |
| commit | 3ae9bdc483e9f78587c6ab9afef5185e4e7d83bb (patch) | |
| tree | b1703690f97546a595cd5f5ee8b3577161a29a93 /repoze/bfg/router.py | |
| parent | 611d270f161c02b580605bcdd0b5141cea3e7109 (diff) | |
| download | pyramid-3ae9bdc483e9f78587c6ab9afef5185e4e7d83bb.tar.gz pyramid-3ae9bdc483e9f78587c6ab9afef5185e4e7d83bb.tar.bz2 pyramid-3ae9bdc483e9f78587c6ab9afef5185e4e7d83bb.zip | |
- Fix ``configure_zcml`` filespec check on Windows. Previously if an
absolute filesystem path including a drive letter was passed as
``filename`` (or as ``configure_zcml`` in the options dict) to
``repoze.bfg.router.make_app``, it would be treated as a
package:resource_name specification.
Diffstat (limited to 'repoze/bfg/router.py')
| -rw-r--r-- | repoze/bfg/router.py | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/repoze/bfg/router.py b/repoze/bfg/router.py index 5addef933..ac8a1faaa 100644 --- a/repoze/bfg/router.py +++ b/repoze/bfg/router.py @@ -1,4 +1,5 @@ -from cgi import escape +import cgi +import os import sys from webob import Response @@ -183,7 +184,7 @@ class Router(object): def default_view(context, request, status): try: - msg = escape(request.environ['repoze.bfg.message']) + msg = cgi.escape(request.environ['repoze.bfg.message']) except KeyError: msg = '' html = """ @@ -211,8 +212,8 @@ def default_notfound_view(context, request): def make_app(root_factory, package=None, filename='configure.zcml', authentication_policy=None, authorization_policy=None, options=None, registry=None, debug_logger=None, - manager=manager): - # registry, debug_logger and manager *only* for unittests + manager=manager, os=os): + # registry, debug_logger, manager and os *only* for unittests """ Return a Router object, representing a fully configured ``repoze.bfg`` WSGI application. @@ -281,7 +282,7 @@ def make_app(root_factory, package=None, filename='configure.zcml', settings = Settings(get_options(options)) filename = settings['configure_zcml'] - if ':' in filename: + if (':' in filename) and (not os.path.isabs(filename)): package, filename = filename.split(':', 1) __import__(package) package = sys.modules[package] |
