From 8ef575f57d98fb623ec3af37efdab41938cc8b39 Mon Sep 17 00:00:00 2001 From: Lakshmi Vyasarajan Date: Wed, 19 Jan 2011 19:04:22 +0530 Subject: [PATCH] Exception handling fixes in server --- hyde/generator.py | 6 ++++++ hyde/server.py | 8 +++++++- 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/hyde/generator.py b/hyde/generator.py index 09fc4ef..40ea573 100644 --- a/hyde/generator.py +++ b/hyde/generator.py @@ -111,6 +111,12 @@ class Generator(object): self.events.generation_complete() def has_resource_changed(self, resource): + """ + Checks if the given resource has changed since the + last generation. + """ + self.load_site_if_needed() + self.load_template_if_needed() target = File(self.site.config.deploy_root_path.child( resource.relative_deploy_path)) if not target.exists or target.older_than(resource.source_file): diff --git a/hyde/server.py b/hyde/server.py index 396905a..a5d566e 100644 --- a/hyde/server.py +++ b/hyde/server.py @@ -46,7 +46,13 @@ class HydeRequestHandler(SimpleHTTPRequestHandler): site = self.server.site res = site.content.resource_from_relative_path( site.config.not_found) - self.redirect("/" + res.relative_deploy_path) + if not res: + logger.error( + "Cannot find the 404 template[%s]." + % site.config.not_found) + return "Requested resource not found" + else: + self.redirect("/" + res.relative_deploy_path) def translate_path(self, path): """