From 129be11fe3496310fe27034977dc642e49af559c Mon Sep 17 00:00:00 2001 From: ptt Date: Thu, 18 Aug 2005 19:06:13 +0000 Subject: don't delete local post while cancel message git-svn-id: http://opensvn.csie.org/pttbbs/trunk/pttbbs@3063 63ad8ddf-47c3-0310-b6dd-a9e9d9715204 --- innbbsd/nocem.h | 2 +- innbbsd/receive_article.c | 10 +++++++--- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/innbbsd/nocem.h b/innbbsd/nocem.h index de5b2d4d..18a4c5e9 100644 --- a/innbbsd/nocem.h +++ b/innbbsd/nocem.h @@ -52,6 +52,6 @@ extern char COUNT[]; extern char THRESHOLD[]; extern char KEYID[]; extern char SPAMMID_NOW[]; -extern char SPAMMID[][]; +extern char SPAMMID[MAXSPAMMID][STRLEN]; #endif /* NOCEM_H */ diff --git a/innbbsd/receive_article.c b/innbbsd/receive_article.c index b9672edd..33831d18 100644 --- a/innbbsd/receive_article.c +++ b/innbbsd/receive_article.c @@ -778,8 +778,11 @@ post_article(homepath, userid, board, writebody, pathname, firstpath) #else strcpy(header.filename, name); - if (userid[IDLEN]) - strcpy(&userid[IDLEN], "."); + if (userid[IDLEN-1]) + { + userid[IDLEN-1] = '.'; + userid[IDLEN] = '\0'; + } strcpy(header.owner, userid); strncpy(header.title, subject, TTLEN); header.filemode |= FILE_MULTI; @@ -988,7 +991,8 @@ cancel_article(homepath, board, file) while (read(fd, &header, size) == size) { if (strcmp(file, header.filename) == 0) { if ((header.filemode & FILE_MARKED) - || (header.filemode & FILE_DIGEST) || (header.owner[0] == '-')) + || (header.filemode & FILE_DIGEST) || (header.owner[0] == '-') + || !strchr(header.owner,'.')) break; delete_record(dirname, sizeof(fileheader_t), lseek(fd, 0, SEEK_CUR) / size); cancelpost(&header, board); -- cgit v1.2.3