From 1ccdf50194eb8e16135d96ff0cb343c8ce23d447 2013-10-18 23:13:54 From: MinRK Date: 2013-10-18 23:13:54 Subject: [PATCH] url_escape redirects --- diff --git a/IPython/html/notebook/handlers.py b/IPython/html/notebook/handlers.py index 2f7b3d4..f9666a1 100644 --- a/IPython/html/notebook/handlers.py +++ b/IPython/html/notebook/handlers.py @@ -67,6 +67,8 @@ class NotebookRedirectHandler(IPythonHandler): # otherwise, redirect to /files # TODO: This should check if it's actually a file url = url_path_join(self.base_project_url, 'files', path) + url = url_escape(url) + self.log.debug("Redirecting %s to %s", self.request.path, url) self.redirect(url) #----------------------------------------------------------------------------- diff --git a/IPython/html/tree/handlers.py b/IPython/html/tree/handlers.py index e2d854d..1ec33d5 100644 --- a/IPython/html/tree/handlers.py +++ b/IPython/html/tree/handlers.py @@ -19,7 +19,7 @@ import os from tornado import web from ..base.handlers import IPythonHandler -from ..utils import url_path_join, path2url, url2path +from ..utils import url_path_join, path2url, url2path, url_escape from ..services.notebooks.handlers import _notebook_path_regex, _path_regex #----------------------------------------------------------------------------- @@ -36,7 +36,10 @@ class TreeHandler(IPythonHandler): nbm = self.notebook_manager if name is not None: # is a notebook, redirect to notebook handler - url = url_path_join(self.base_project_url, 'notebooks', path, name) + url = url_escape(url_path_join( + self.base_project_url, 'notebooks', path, name + )) + self.log.debug("Redirecting %s to %s", self.request.path, url) self.redirect(url) else: if not nbm.path_exists(path=path): @@ -54,8 +57,10 @@ class TreeRedirectHandler(IPythonHandler): @web.authenticated def get(self, path=''): - url = url_path_join(self.base_project_url, 'tree', path).rstrip('/') - self.log.debug("Redirecting %s to %s", self.request.uri, url) + url = url_escape(url_path_join( + self.base_project_url, 'tree', path.strip('/') + )) + self.log.debug("Redirecting %s to %s", self.request.path, url) self.redirect(url)