diff options
author | in2 <in2@63ad8ddf-47c3-0310-b6dd-a9e9d9715204> | 2005-02-19 00:03:49 +0800 |
---|---|---|
committer | in2 <in2@63ad8ddf-47c3-0310-b6dd-a9e9d9715204> | 2005-02-19 00:03:49 +0800 |
commit | 4c19b81b4c652d5a6c5b47b9c081f476c0a52c91 (patch) | |
tree | 303cd909609e55798abe03c37c3f84aaa7541080 /mbbsd/mbbsd.c | |
parent | d930cd953212d3544b86763f1ce492a1ade87b9f (diff) | |
download | pttbbs-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.c | 10 |
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]; |