summaryrefslogtreecommitdiffstats
path: root/mbbsd/mbbsd.c
diff options
context:
space:
mode:
authorin2 <in2@63ad8ddf-47c3-0310-b6dd-a9e9d9715204>2005-02-19 00:03:49 +0800
committerin2 <in2@63ad8ddf-47c3-0310-b6dd-a9e9d9715204>2005-02-19 00:03:49 +0800
commit4c19b81b4c652d5a6c5b47b9c081f476c0a52c91 (patch)
tree303cd909609e55798abe03c37c3f84aaa7541080 /mbbsd/mbbsd.c
parentd930cd953212d3544b86763f1ce492a1ade87b9f (diff)
downloadpttbbs-4c19b81b4c652d5a6c5b47b9c081f476c0a52c91.tar
pttbbs-4c19b81b4c652d5a6c5b47b9c081f476c0a52c91.tar.gz
pttbbs-4c19b81b4c652d5a6c5b47b9c081f476c0a52c91.tar.bz2
pttbbs-4c19b81b4c652d5a6c5b47b9c081f476c0a52c91.tar.lz
pttbbs-4c19b81b4c652d5a6c5b47b9c081f476c0a52c91.tar.xz
pttbbs-4c19b81b4c652d5a6c5b47b9c081f476c0a52c91.tar.zst
pttbbs-4c19b81b4c652d5a6c5b47b9c081f476c0a52c91.zip
in CRITICAL_MEMORY, alloc water[] when it's needed.
save many memory for most users. git-svn-id: http://opensvn.csie.org/pttbbs/trunk/pttbbs@2521 63ad8ddf-47c3-0310-b6dd-a9e9d9715204
Diffstat (limited to 'mbbsd/mbbsd.c')
-rw-r--r--mbbsd/mbbsd.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/mbbsd/mbbsd.c b/mbbsd/mbbsd.c
index 9fc9225f..262913f4 100644
--- a/mbbsd/mbbsd.c
+++ b/mbbsd/mbbsd.c
@@ -292,6 +292,14 @@ add_history(msgque_t * msg)
{
int i = 0, j, waterinit = 0;
water_t *tmp;
+#ifdef CRITICAL_MEMORY
+ if( !water ){
+ water = (water_t*)malloc(sizeof(water_t) * 6);
+ memset(water, 0, sizeof(water_t) * 6);
+ water_which = &water[0];
+ strlcpy(water[0].userid, " ¥þ³¡ ", sizeof(water[0].userid));
+ }
+#endif
if (WATERMODE(WATER_ORIG) || WATERMODE(WATER_NEW))
add_history_water(&water[0], msg);
if (WATERMODE(WATER_NEW) || WATERMODE(WATER_OFO)) {
@@ -909,8 +917,10 @@ user_login()
resolve_fcache();
/* resolve_boards(); */
numboards = SHM->Bnumber;
+#ifndef CRITICAL_MEMORY
memset(&water[0], 0, sizeof(water_t) * 6);
strlcpy(water[0].userid, " ¥þ³¡ ", sizeof(water[0].userid));
+#endif
if(getenv("SSH_CLIENT") != NULL){
char frombuf[50];