summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorpiaip <piaip@63ad8ddf-47c3-0310-b6dd-a9e9d9715204>2009-06-16 05:24:54 +0800
committerpiaip <piaip@63ad8ddf-47c3-0310-b6dd-a9e9d9715204>2009-06-16 05:24:54 +0800
commit9a8c1082836761724940f445c7a72e6a4fc293c9 (patch)
treead34e43b6da09983788e50dba214a12aa039f5f3
parent1fbf85139681696ed8c7ac849530baf4de756864 (diff)
downloadpttbbs-9a8c1082836761724940f445c7a72e6a4fc293c9.tar
pttbbs-9a8c1082836761724940f445c7a72e6a4fc293c9.tar.gz
pttbbs-9a8c1082836761724940f445c7a72e6a4fc293c9.tar.bz2
pttbbs-9a8c1082836761724940f445c7a72e6a4fc293c9.tar.lz
pttbbs-9a8c1082836761724940f445c7a72e6a4fc293c9.tar.xz
pttbbs-9a8c1082836761724940f445c7a72e6a4fc293c9.tar.zst
pttbbs-9a8c1082836761724940f445c7a72e6a4fc293c9.zip
* fix: memory leak + segv: passing incorrect parameter as buffer. (how can this be found so late!?)
git-svn-id: http://opensvn.csie.org/pttbbs/trunk@4629 63ad8ddf-47c3-0310-b6dd-a9e9d9715204
-rw-r--r--pttbbs/mbbsd/bbslua.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/pttbbs/mbbsd/bbslua.c b/pttbbs/mbbsd/bbslua.c
index 1d09c271..76dbb529 100644
--- a/pttbbs/mbbsd/bbslua.c
+++ b/pttbbs/mbbsd/bbslua.c
@@ -1107,6 +1107,8 @@ bbslua_attach(const char *fpath, size_t *plen)
static void
bbslua_detach(char *p, int len)
{
+ assert(p);
+
#ifdef BLCONF_MMAP_ATTACH
munmap(p, len);
#else // !BLCONF_MMAP_ATTACH
@@ -1695,7 +1697,7 @@ bbslua(const char *fpath)
strlcpy(bfpath, fpath, sizeof(bfpath));
// load file
- bbslua_loadLatest(L, &ps, &ps, &pe, &pc, &sz, &lineshift, bfpath, &fpath);
+ bbslua_loadLatest(L, &bs, &ps, &pe, &pc, &sz, &lineshift, bfpath, &fpath);
if (!ps || !pe || ps >= pe)
{