From cdb598439fc2ec56897aaf2d20d2398ca2cdaba3 Mon Sep 17 00:00:00 2001 From: randomdan Date: Sat, 16 Mar 2013 13:22:41 +0000 Subject: Fix the case where the routing table wasn't cleared before reload --- project2/cgi/cgiProgRouter.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/project2/cgi/cgiProgRouter.cpp b/project2/cgi/cgiProgRouter.cpp index ff7c864..6e7f73f 100644 --- a/project2/cgi/cgiProgRouter.cpp +++ b/project2/cgi/cgiProgRouter.cpp @@ -9,9 +9,9 @@ typedef std::map VarMap; class RoutingTable { public: RoutingTable & operator=(const std::string & routeFile) { - routes.clear(); routeScriptPath = routeFile; if (routeFile.empty()) { + routes.clear(); routeScript.reset(); } else { @@ -30,6 +30,7 @@ class RoutingTable { { routeScript = Environment::getCurrent()->resolveScript(Environment::getCurrent()->datasourceRoot, routeScriptPath, true); routeScript->loader.addLoadTarget(routeScript->root(), Storer::into(&routes)); + routes.clear(); routeScript->load(NULL, true); } ScriptReaderPtr routeScript; -- cgit v1.2.3