diff options
author | ptt <ptt@63ad8ddf-47c3-0310-b6dd-a9e9d9715204> | 2005-08-19 03:06:13 +0800 |
---|---|---|
committer | ptt <ptt@63ad8ddf-47c3-0310-b6dd-a9e9d9715204> | 2005-08-19 03:06:13 +0800 |
commit | 129be11fe3496310fe27034977dc642e49af559c (patch) | |
tree | 12b72cfa632115af91a977e357db56efdcbc8bc3 /innbbsd/receive_article.c | |
parent | fe78367f3084e6e829b995e30bd6548ae28833d4 (diff) | |
download | pttbbs-129be11fe3496310fe27034977dc642e49af559c.tar pttbbs-129be11fe3496310fe27034977dc642e49af559c.tar.gz pttbbs-129be11fe3496310fe27034977dc642e49af559c.tar.bz2 pttbbs-129be11fe3496310fe27034977dc642e49af559c.tar.lz pttbbs-129be11fe3496310fe27034977dc642e49af559c.tar.xz pttbbs-129be11fe3496310fe27034977dc642e49af559c.tar.zst pttbbs-129be11fe3496310fe27034977dc642e49af559c.zip |
don't delete local post while cancel message
git-svn-id: http://opensvn.csie.org/pttbbs/trunk/pttbbs@3063 63ad8ddf-47c3-0310-b6dd-a9e9d9715204
Diffstat (limited to 'innbbsd/receive_article.c')
-rw-r--r-- | innbbsd/receive_article.c | 10 |
1 files changed, 7 insertions, 3 deletions
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); |