summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorin2 <in2@63ad8ddf-47c3-0310-b6dd-a9e9d9715204>2003-03-28 03:18:52 +0800
committerin2 <in2@63ad8ddf-47c3-0310-b6dd-a9e9d9715204>2003-03-28 03:18:52 +0800
commitab630c2235ea603c92efdc8bb82b02908080c6d0 (patch)
tree6d14ff1cd57e8d60d991ce07650aeb04d0c206ca
parent0c8ef6458e975813040574071256be74ffc524ef (diff)
downloadpttbbs-ab630c2235ea603c92efdc8bb82b02908080c6d0.tar
pttbbs-ab630c2235ea603c92efdc8bb82b02908080c6d0.tar.gz
pttbbs-ab630c2235ea603c92efdc8bb82b02908080c6d0.tar.bz2
pttbbs-ab630c2235ea603c92efdc8bb82b02908080c6d0.tar.lz
pttbbs-ab630c2235ea603c92efdc8bb82b02908080c6d0.tar.xz
pttbbs-ab630c2235ea603c92efdc8bb82b02908080c6d0.tar.zst
pttbbs-ab630c2235ea603c92efdc8bb82b02908080c6d0.zip
bug fix of moving board
git-svn-id: http://opensvn.csie.org/pttbbs/pttbbs/trunk@735 63ad8ddf-47c3-0310-b6dd-a9e9d9715204
-rw-r--r--pttbbs/mbbsd/board.c13
1 files changed, 9 insertions, 4 deletions
diff --git a/pttbbs/mbbsd/board.c b/pttbbs/mbbsd/board.c
index fb598591..d041ec65 100644
--- a/pttbbs/mbbsd/board.c
+++ b/pttbbs/mbbsd/board.c
@@ -1,4 +1,4 @@
-/* $Id: board.c,v 1.108 2003/03/27 15:14:33 victor Exp $ */
+/* $Id: board.c,v 1.109 2003/03/27 19:18:52 in2 Exp $ */
#include "bbs.h"
#define BRC_STRLEN 15 /* Length of board name */
#define BRC_MAXSIZE 24576
@@ -1214,16 +1214,21 @@ choose_board(int newflag)
if (class_bid != 0 &&
(HAS_PERM(PERM_SYSOP) || (currmode & MODE_MENU))) {
for (tmp = 0; tmp < fav->nDatas; tmp++) {
- boardheader_t *bh = &bcache[tmp];
+ short bid = fav->b[tmp].bid;
+ boardheader_t *bh = &bcache[ bid - 1 ];
+ /*
if (!(fav->b[tmp].attr & BRD_TAG) || bh->gid == class_bid)
continue;
+ */
+ if( !(fav->b[tmp].attr & BRD_TAG) )
+ continue;
favchange = 1;
fav->b[tmp].attr &= ~BRD_TAG;
if (bh->gid != class_bid) {
bh->gid = class_bid;
substitute_record(FN_BOARD, bh,
- sizeof(boardheader_t), tmp + 1);
- reset_board(tmp + 1);
+ sizeof(boardheader_t), bid);
+ reset_board(bid);
log_usies("SetBoardGID", bh->brdname);
}
}