diff options
author | piaip <piaip@63ad8ddf-47c3-0310-b6dd-a9e9d9715204> | 2010-07-14 21:39:52 +0800 |
---|---|---|
committer | piaip <piaip@63ad8ddf-47c3-0310-b6dd-a9e9d9715204> | 2010-07-14 21:39:52 +0800 |
commit | 72f887a335100714f89c8b80b0ababc4e1839067 (patch) | |
tree | 3c9f596779f8581f1af4d183b7c72869abe6e0bd | |
parent | 57ef695f77b2292fd296c5e01be8f6dab73a67db (diff) | |
download | pttbbs-72f887a335100714f89c8b80b0ababc4e1839067.tar pttbbs-72f887a335100714f89c8b80b0ababc4e1839067.tar.gz pttbbs-72f887a335100714f89c8b80b0ababc4e1839067.tar.bz2 pttbbs-72f887a335100714f89c8b80b0ababc4e1839067.tar.lz pttbbs-72f887a335100714f89c8b80b0ababc4e1839067.tar.xz pttbbs-72f887a335100714f89c8b80b0ababc4e1839067.tar.zst pttbbs-72f887a335100714f89c8b80b0ababc4e1839067.zip |
* fix toplazyBM
git-svn-id: http://opensvn.csie.org/pttbbs/trunk@5091 63ad8ddf-47c3-0310-b6dd-a9e9d9715204
-rw-r--r-- | pttbbs/util/toplazyBM.c | 18 |
1 files changed, 17 insertions, 1 deletions
diff --git a/pttbbs/util/toplazyBM.c b/pttbbs/util/toplazyBM.c index e2bc0a6b..80f4f8b0 100644 --- a/pttbbs/util/toplazyBM.c +++ b/pttbbs/util/toplazyBM.c @@ -112,6 +112,7 @@ int main(int argc, char *argv[]) xuser.userlevel &= ~PERM_BM; bms[index].flag = 1; flag = 1; + // NOTE: 好像不改也無所謂,目前拔 BM 是自動的。 passwd_update(bmid, &xuser); } j++; @@ -120,6 +121,18 @@ int main(int argc, char *argv[]) } if (flag == 1) { + boardheader_t *bp = getbcache(i+1); + + // 確認我們沒搞錯 cache. 如果 cache 炸了就別用了 + if (strcmp(bp->brdname, allbrd[i].brdname) != 0) { + printf("ERROR: unmatched cache!!! (%s - %s)\n", + bp->brdname, allbrd[i].brdname); + bp = NULL; + exit(1); + // sync to latest + memcpy(&allbrd[i], bp, sizeof(boardheader_t)); + } + bmbuf[0] = '\0'; for (k = 0, n = 0; k < index; k++) { if (!bms[k].flag) { @@ -128,9 +141,12 @@ int main(int argc, char *argv[]) } } strcpy(allbrd[i].BM, bmbuf); + printf("board %s: %s -> %s\n", + allbrd[i].brdname, bp->BM, allbrd[i].BM); + strcpy(bp->BM, allbrd[i].BM); if (substitute_record(BBSHOME"/"FN_BOARD, &allbrd[i], sizeof(boardheader_t), i+1) == -1) { - printf("Update Board Faile : %s\n", allbrd[i].brdname); + printf("Update Board Failed: %s\n", allbrd[i].brdname); } reset_board(i+1); } |