summaryrefslogtreecommitdiffstats
path: root/crawl-ref/source/l_travel.cc
diff options
context:
space:
mode:
authorDarshan Shaligram <dshaligram@users.sourceforge.net>2010-09-04 19:36:34 +0530
committerDarshan Shaligram <dshaligram@users.sourceforge.net>2010-09-04 19:42:39 +0530
commit79223f573b9399a607ed8a5cc7124fb1aa10b786 (patch)
tree673f94ab15aa5ae90a6f198051d0db6551153013 /crawl-ref/source/l_travel.cc
parentf07c2355e9784425d99a62335927de80be00fff4 (diff)
downloadcrawl-ref-79223f573b9399a607ed8a5cc7124fb1aa10b786.tar.gz
crawl-ref-79223f573b9399a607ed8a5cc7124fb1aa10b786.zip
Fix travel.find_deepest_explored pegging CPU if used with a bad branch name (by).
Diffstat (limited to 'crawl-ref/source/l_travel.cc')
-rw-r--r--crawl-ref/source/l_travel.cc4
1 files changed, 3 insertions, 1 deletions
diff --git a/crawl-ref/source/l_travel.cc b/crawl-ref/source/l_travel.cc
index 49eb80e414..875b357b2b 100644
--- a/crawl-ref/source/l_travel.cc
+++ b/crawl-ref/source/l_travel.cc
@@ -52,7 +52,9 @@ LUAFN(l_feature_is_traversable)
LUAFN(l_find_deepest_explored)
{
const std::string &branch = luaL_checkstring(ls, 1);
- level_id lid(str_to_branch(branch), 1);
+ const level_id lid(str_to_branch(branch), 1);
+ if (lid.branch == NUM_BRANCHES)
+ luaL_error(ls, "Bad branch name: '%s'", branch.c_str());
PLUARET(number, find_deepest_explored(lid).depth);
}