summaryrefslogtreecommitdiffstats
path: root/mbbsd/fav.c
diff options
context:
space:
mode:
authorkcwu <kcwu@63ad8ddf-47c3-0310-b6dd-a9e9d9715204>2006-04-08 22:58:06 +0800
committerkcwu <kcwu@63ad8ddf-47c3-0310-b6dd-a9e9d9715204>2006-04-08 22:58:06 +0800
commit4e8a2c25129260c61df345f15715d75c715cb92c (patch)
tree9056598d7d2db1fe74cbe22fcabf047148c00e03 /mbbsd/fav.c
parent55e87717eb4ab1efdcba4d2622c1c98c71f871e3 (diff)
downloadpttbbs-4e8a2c25129260c61df345f15715d75c715cb92c.tar
pttbbs-4e8a2c25129260c61df345f15715d75c715cb92c.tar.gz
pttbbs-4e8a2c25129260c61df345f15715d75c715cb92c.tar.bz2
pttbbs-4e8a2c25129260c61df345f15715d75c715cb92c.tar.lz
pttbbs-4e8a2c25129260c61df345f15715d75c715cb92c.tar.xz
pttbbs-4e8a2c25129260c61df345f15715d75c715cb92c.tar.zst
pttbbs-4e8a2c25129260c61df345f15715d75c715cb92c.zip
add a lot of assertions to ensure bid is in correct range when access via bid.
git-svn-id: http://opensvn.csie.org/pttbbs/trunk/pttbbs@3341 63ad8ddf-47c3-0310-b6dd-a9e9d9715204
Diffstat (limited to 'mbbsd/fav.c')
-rw-r--r--mbbsd/fav.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/mbbsd/fav.c b/mbbsd/fav.c
index bf1c7b7e..fa7d144c 100644
--- a/mbbsd/fav.c
+++ b/mbbsd/fav.c
@@ -207,6 +207,7 @@ char *get_item_title(fav_type_t *ft)
{
switch (get_item_type(ft)){
case FAVT_BOARD:
+ assert(0<=cast_board(ft)->bid-1 && cast_board(ft)->bid-1<MAX_BOARD);
return bcache[cast_board(ft)->bid - 1].brdname;
case FAVT_FOLDER:
return cast_folder(ft)->title;
@@ -220,6 +221,7 @@ static char *get_item_class(fav_type_t *ft)
{
switch (get_item_type(ft)){
case FAVT_BOARD:
+ assert(0<=cast_board(ft)->bid-1 && cast_board(ft)->bid-1<MAX_BOARD);
return bcache[cast_board(ft)->bid - 1].title;
case FAVT_FOLDER:
return "¥Ø¿ý";
@@ -691,6 +693,7 @@ fav_type_t *getadmtag(short bid)
int i;
fav_t *fp = get_fav_root();
fav_type_t *ft;
+ assert(0<=bid-1 && bid-1<MAX_BOARD);
for (i = 0; i < fp->DataTail; i++) {
ft = &fp->favh[i];
if (get_item_type(ft) == FAVT_BOARD && cast_board(ft)->bid == bid && is_set_attr(ft, FAVH_ADM_TAG))
@@ -701,6 +704,7 @@ fav_type_t *getadmtag(short bid)
fav_type_t *getboard(short bid)
{
+ assert(0<=bid-1 && bid-1<MAX_BOARD);
return get_fav_item(bid, FAVT_BOARD);
}