diff options
author | Darshan Shaligram <dshaligram@users.sourceforge.net> | 2010-09-04 19:36:34 +0530 |
---|---|---|
committer | Darshan Shaligram <dshaligram@users.sourceforge.net> | 2010-09-04 19:42:39 +0530 |
commit | 79223f573b9399a607ed8a5cc7124fb1aa10b786 (patch) | |
tree | 673f94ab15aa5ae90a6f198051d0db6551153013 /crawl-ref/source/l_travel.cc | |
parent | f07c2355e9784425d99a62335927de80be00fff4 (diff) | |
download | crawl-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.cc | 4 |
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); } |