diff options
author | piaip <piaip@63ad8ddf-47c3-0310-b6dd-a9e9d9715204> | 2010-11-07 13:27:37 +0800 |
---|---|---|
committer | piaip <piaip@63ad8ddf-47c3-0310-b6dd-a9e9d9715204> | 2010-11-07 13:27:37 +0800 |
commit | 8064ff29cbdfed16c8bc152397d89467c5f321d0 (patch) | |
tree | 1ff1b8996bba2ae8df4d9d4df72537b27e92ce2a | |
parent | 50180ef778c500ade0b2eaff448524130c2242e5 (diff) | |
download | pttbbs-8064ff29cbdfed16c8bc152397d89467c5f321d0.tar pttbbs-8064ff29cbdfed16c8bc152397d89467c5f321d0.tar.gz pttbbs-8064ff29cbdfed16c8bc152397d89467c5f321d0.tar.bz2 pttbbs-8064ff29cbdfed16c8bc152397d89467c5f321d0.tar.lz pttbbs-8064ff29cbdfed16c8bc152397d89467c5f321d0.tar.xz pttbbs-8064ff29cbdfed16c8bc152397d89467c5f321d0.tar.zst pttbbs-8064ff29cbdfed16c8bc152397d89467c5f321d0.zip |
fix: mail should follow delete_file_content.
git-svn-id: http://opensvn.csie.org/pttbbs/trunk@5222 63ad8ddf-47c3-0310-b6dd-a9e9d9715204
-rw-r--r-- | pttbbs/mbbsd/bbs.c | 2 | ||||
-rw-r--r-- | pttbbs/mbbsd/mail.c | 22 |
2 files changed, 9 insertions, 15 deletions
diff --git a/pttbbs/mbbsd/bbs.c b/pttbbs/mbbsd/bbs.c index 5303cbc5..15b992b1 100644 --- a/pttbbs/mbbsd/bbs.c +++ b/pttbbs/mbbsd/bbs.c @@ -3103,7 +3103,7 @@ del_range(int ent, const fileheader_t *fhdr, const char *direct, // 'm' = 精華區 man/.../* or man/boards/%c/%s/.../* // 'h' = 信箱 home/%c/%s/* 或信箱精華區 home/%c/%s/man/.../* int is_board = (*direct == 'b'), - is_home = (*direct == 'h'), + // is_home = (*direct == 'h'), is_man = (*direct == 'm'); #ifdef SAFE_ARTICLE_DELETE diff --git a/pttbbs/mbbsd/mail.c b/pttbbs/mbbsd/mail.c index e5571159..48903f9c 100644 --- a/pttbbs/mbbsd/mail.c +++ b/pttbbs/mbbsd/mail.c @@ -1223,8 +1223,6 @@ maildoent(int num, fileheader_t * ent) static int mail_del(int ent, const fileheader_t * fhdr, const char *direct) { - char genbuf[200]; - if (fhdr->filemode & FILE_MARKED) return DONOTHING; @@ -1235,20 +1233,16 @@ mail_del(int ent, const fileheader_t * fhdr, const char *direct) if (vans(msg_del_ny) == 'y') { if (!delete_fileheader(direct, fhdr, ent)) { + int del_ret = 0; setupmailusage(); - setdirpath(genbuf, direct, fhdr->filename); -#ifdef USE_TIME_CAPSULE - // TODO we should collect all logf(delete) together - log_filef(genbuf, LOG_CREAT, "\n※ Deleted by: %s (%s) %s", - cuser.userid, fromhost, Cdatelite(&now)); - // bypass those recovered files - if (strncmp(fhdr->owner, RECYCLE_BIN_OWNER, - strlen(RECYCLE_BIN_OWNER)) != 0) - timecapsule_archive_new_revision( - genbuf, fhdr, sizeof(*fhdr), NULL, 0); -#endif // USE_TIME_CAPSULE - unlink(genbuf); + del_ret = delete_file_content(direct, fhdr, direct, NULL, 0); loadmailusage(); + if (del_ret == DELETE_FILE_CONTENT_BACKUP_FAILED) + vmsg("信件已刪除但不會進入資源回收筒"); +#ifdef DEBUG + else if (!IS_DELETE_FILE_CONTENT_OK(del_ret)) + vmsg("檔案已不存在,請至" BN_BUGREPORT "報告,謝謝"); +#endif return DIRCHANGED; } else { vmsg("刪除失敗,請確定未多重登入後再重試。"); |