summaryrefslogtreecommitdiffstats
path: root/mbbsd/bbs.c
diff options
context:
space:
mode:
authorptt <ptt@63ad8ddf-47c3-0310-b6dd-a9e9d9715204>2004-09-23 22:37:18 +0800
committerptt <ptt@63ad8ddf-47c3-0310-b6dd-a9e9d9715204>2004-09-23 22:37:18 +0800
commit46318e907721f11256d245d42cd8e841e8765057 (patch)
tree18375c30f7d613818464343013f3046081586266 /mbbsd/bbs.c
parente84a29034ca2aaeedce5f2cd84e68264fb9a3b46 (diff)
downloadpttbbs-46318e907721f11256d245d42cd8e841e8765057.tar
pttbbs-46318e907721f11256d245d42cd8e841e8765057.tar.gz
pttbbs-46318e907721f11256d245d42cd8e841e8765057.tar.bz2
pttbbs-46318e907721f11256d245d42cd8e841e8765057.tar.lz
pttbbs-46318e907721f11256d245d42cd8e841e8765057.tar.xz
pttbbs-46318e907721f11256d245d42cd8e841e8765057.tar.zst
pttbbs-46318e907721f11256d245d42cd8e841e8765057.zip
1. fix 1 make error
2. add perm_nocitizen 3. add no reply for FILE_SOLVE git-svn-id: http://opensvn.csie.org/pttbbs/trunk/pttbbs@2210 63ad8ddf-47c3-0310-b6dd-a9e9d9715204
Diffstat (limited to 'mbbsd/bbs.c')
-rw-r--r--mbbsd/bbs.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/mbbsd/bbs.c b/mbbsd/bbs.c
index b98070d5..fd9e9d08 100644
--- a/mbbsd/bbs.c
+++ b/mbbsd/bbs.c
@@ -127,7 +127,8 @@ set_board(void)
/* init basic perm, but post perm is checked on demand */
currmode = (currmode & (MODE_DIRTY | MODE_GROUPOP)) | MODE_STARTED;
- if (HAS_PERM(PERM_ALLBOARD) || is_BM_cache(currbid)) {
+ if (!HAS_PERM(PERM_NOCITIZEN) &&
+ (HAS_PERM(PERM_ALLBOARD) || is_BM_cache(currbid))) {
currmode = currmode | MODE_BOARD | MODE_POST | MODE_POSTCHECKED;
}
}
@@ -886,9 +887,8 @@ do_reply(fileheader_t * fhdr)
static int
reply_post(int ent, fileheader_t * fhdr, char *direct)
{
- if (!CheckPostPerm())
+ if (!CheckPostPerm() || (fhdr->filemode &FILE_SOLVED))
return DONOTHING;
-
setdirpath(quote_file, direct, fhdr->filename);
do_reply(fhdr);
*quote_file = 0;
@@ -1293,7 +1293,7 @@ edit_title(int ent, fileheader_t * fhdr, char *direct)
static int
solve_post(int ent, fileheader_t * fhdr, char *direct)
{
- if (HAS_PERM(PERM_SYSOP)) {
+ if (HAS_PERM(PERM_SYSOP) || (currmode & MODE_BOARD)) {
fhdr->filemode ^= FILE_SOLVED;
substitute_ref_record(direct, fhdr, ent);
return PART_REDRAW;