summaryrefslogtreecommitdiffstats
path: root/crawl-ref/source/database.cc
diff options
context:
space:
mode:
authordshaligram <dshaligram@c06c8d41-db1a-0410-9941-cceddc491573>2007-04-20 22:18:23 +0000
committerdshaligram <dshaligram@c06c8d41-db1a-0410-9941-cceddc491573>2007-04-20 22:18:23 +0000
commite8e11dc64f771035d877ffb3fc1aaa1d092ee5b6 (patch)
treed29b6af1586b1be4313ff658d510e57395f62b68 /crawl-ref/source/database.cc
parent06195a1e5d1bc504543da231baf90558df168064 (diff)
downloadcrawl-ref-e8e11dc64f771035d877ffb3fc1aaa1d092ee5b6.tar.gz
crawl-ref-e8e11dc64f771035d877ffb3fc1aaa1d092ee5b6.zip
Unlink db file if it is stale.
Function signature was wrong for getLongDescription, fixed. git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@1338 c06c8d41-db1a-0410-9941-cceddc491573
Diffstat (limited to 'crawl-ref/source/database.cc')
-rw-r--r--crawl-ref/source/database.cc6
1 files changed, 4 insertions, 2 deletions
diff --git a/crawl-ref/source/database.cc b/crawl-ref/source/database.cc
index d8d954e912..385ce2535b 100644
--- a/crawl-ref/source/database.cc
+++ b/crawl-ref/source/database.cc
@@ -111,7 +111,7 @@ datum database_fetch(DBM *database, const std::string &key)
return result;
}
-std::string getLongDescription(const char *key)
+std::string getLongDescription(const std::string &key)
{
if (!descriptionDB)
return ("");
@@ -132,11 +132,13 @@ static void store_descriptions(const std::string &in, const std::string &out);
static void generate_description_db()
{
std::string db_path = get_savedir_path(DESC_BASE_NAME);
+ std::string full_db_path = get_savedir_path(DESC_DB);
std::string txt_path = datafile_path(DESC_TXT);
file_lock lock(get_savedir_path(DESC_BASE_NAME ".lk"), "wb");
+ unlink( full_db_path.c_str() );
store_descriptions(txt_path, db_path);
- DO_CHMOD_PRIVATE(get_savedir_path(DESC_DB).c_str());
+ DO_CHMOD_PRIVATE(full_db_path.c_str());
}
static void trim_right(std::string &s)