summaryrefslogtreecommitdiffstats
path: root/crawl-ref/source/clua.cc
diff options
context:
space:
mode:
authorAdam Borowski <kilobyte@angband.pl>2010-09-06 12:23:25 +0200
committerAdam Borowski <kilobyte@angband.pl>2010-09-06 12:23:25 +0200
commit79115ccbe604db26b47ab1d21f88ff751f487716 (patch)
tree9dd1451bc5431599b0e063ce64bb9ee4568ca933 /crawl-ref/source/clua.cc
parentddf65d876d24150ca38a9aec9b66282b06615add (diff)
parenta087ed692319114f86589f392593ae50d704d48d (diff)
downloadcrawl-ref-79115ccbe604db26b47ab1d21f88ff751f487716.tar.gz
crawl-ref-79115ccbe604db26b47ab1d21f88ff751f487716.zip
Merge branch 'save-package'
Diffstat (limited to 'crawl-ref/source/clua.cc')
-rw-r--r--crawl-ref/source/clua.cc9
1 files changed, 4 insertions, 5 deletions
diff --git a/crawl-ref/source/clua.cc b/crawl-ref/source/clua.cc
index f77e3b24bf..f11a42d5c9 100644
--- a/crawl-ref/source/clua.cc
+++ b/crawl-ref/source/clua.cc
@@ -116,15 +116,14 @@ void CLua::gc()
lua_gc(state(), LUA_GCCOLLECT, 0);
}
-void CLua::save(const char *file)
+void CLua::save(writer &outf)
{
if (!_state)
return;
- CLuaSave clsave = { file, NULL };
- callfn("c_save", "u", &clsave);
- if (clsave.handle)
- fclose(clsave.handle);
+ std::string res;
+ callfn("c_save", ">s", &res);
+ outf.write(res.c_str(), res.size());
}
int CLua::file_write(lua_State *ls)