summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorpiaip <piaip@63ad8ddf-47c3-0310-b6dd-a9e9d9715204>2005-09-16 10:58:22 +0800
committerpiaip <piaip@63ad8ddf-47c3-0310-b6dd-a9e9d9715204>2005-09-16 10:58:22 +0800
commitac241aafaead0a3f4db4a66bdc29d88e7e8f465a (patch)
tree665e81b38aeb901bbebf4b1300e47e56fa2ebf80
parent4d00526c4b1a2cc3e60f5adcf7c8bb5a4dc20912 (diff)
downloadpttbbs-ac241aafaead0a3f4db4a66bdc29d88e7e8f465a.tar
pttbbs-ac241aafaead0a3f4db4a66bdc29d88e7e8f465a.tar.gz
pttbbs-ac241aafaead0a3f4db4a66bdc29d88e7e8f465a.tar.bz2
pttbbs-ac241aafaead0a3f4db4a66bdc29d88e7e8f465a.tar.lz
pttbbs-ac241aafaead0a3f4db4a66bdc29d88e7e8f465a.tar.xz
pttbbs-ac241aafaead0a3f4db4a66bdc29d88e7e8f465a.tar.zst
pttbbs-ac241aafaead0a3f4db4a66bdc29d88e7e8f465a.zip
fix mail_reply(0, fhdr, 0); caused segv due to mail +r flag,
and make DEBUGSLEEP mode more robust (hope so) git-svn-id: http://opensvn.csie.org/pttbbs/trunk/pttbbs@3179 63ad8ddf-47c3-0310-b6dd-a9e9d9715204
-rw-r--r--mbbsd/mail.c3
-rw-r--r--mbbsd/mbbsd.c3
2 files changed, 4 insertions, 2 deletions
diff --git a/mbbsd/mail.c b/mbbsd/mail.c
index 30e9b06c..9d6ff1e4 100644
--- a/mbbsd/mail.c
+++ b/mbbsd/mail.c
@@ -1151,7 +1151,8 @@ mail_reply(int ent, fileheader_t * fhdr, const char *direct)
case 0:
/* success */
- if ( (curredit & EDIT_MAIL) &&
+ if ( ent && /* for board, no ent */
+ (curredit & EDIT_MAIL) &&
!(fhdr->filemode & FILE_REPLIED))
{
fhdr->filemode |= FILE_REPLIED;
diff --git a/mbbsd/mbbsd.c b/mbbsd/mbbsd.c
index 59ca1b1e..ed55c868 100644
--- a/mbbsd/mbbsd.c
+++ b/mbbsd/mbbsd.c
@@ -262,12 +262,13 @@ abort_bbs_debug(int sig)
*/
#ifdef DEBUGSLEEP
+
#ifndef VALGRIND
setproctitle("debug me!(%d)(%s,%d)", sig, cuser.userid, currstat);
#endif
/* do this manually to prevent broken stuff */
/* will broken currutmp cause problems here? hope not... */
- if(currutmp)
+ if(currutmp && strncmp(cuser.userid, currutmp->userid, IDLEN) == EQUSTR)
currutmp->mode = DEBUGSLEEPING;
sleep(3600); /* wait 60 mins for debug */