From 09913471e7e2009fec0ce3161b02a2d04f5d9126 Mon Sep 17 00:00:00 2001 From: MinRK Date: Mon, 15 Apr 2013 13:27:04 -0700 Subject: [PATCH] backport If-Modified-Since fix from tornado See facebook/tornado#713 closes #3177 --- IPython/frontend/html/notebook/handlers.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/IPython/frontend/html/notebook/handlers.py b/IPython/frontend/html/notebook/handlers.py index dd3eef47c..d6536f8af 100644 --- a/IPython/frontend/html/notebook/handlers.py +++ b/IPython/frontend/html/notebook/handlers.py @@ -820,7 +820,7 @@ class FileFindHandler(web.StaticFileHandler): raise HTTPError(403, "%s is not a file", path) stat_result = os.stat(abspath) - modified = datetime.datetime.fromtimestamp(stat_result[stat.ST_MTIME]) + modified = datetime.datetime.utcfromtimestamp(stat_result[stat.ST_MTIME]) self.set_header("Last-Modified", modified) @@ -844,7 +844,7 @@ class FileFindHandler(web.StaticFileHandler): ims_value = self.request.headers.get("If-Modified-Since") if ims_value is not None: date_tuple = email.utils.parsedate(ims_value) - if_since = datetime.datetime.fromtimestamp(time.mktime(date_tuple)) + if_since = datetime.datetime(*date_tuple[:6]) if if_since >= modified: self.set_status(304) return