summaryrefslogtreecommitdiffstats
path: root/mbbsd/name.c
diff options
context:
space:
mode:
authorwens <wens@63ad8ddf-47c3-0310-b6dd-a9e9d9715204>2004-12-05 11:17:32 +0800
committerwens <wens@63ad8ddf-47c3-0310-b6dd-a9e9d9715204>2004-12-05 11:17:32 +0800
commita95201ad4d7b597ec13650c28251af838892bef7 (patch)
tree83bdc62dcfd5dab3690b3fe0c96bc3eb6fabddfc /mbbsd/name.c
parentf3cd768750fb89b3ab1e26d5b0dd42738af0a714 (diff)
downloadpttbbs-a95201ad4d7b597ec13650c28251af838892bef7.tar
pttbbs-a95201ad4d7b597ec13650c28251af838892bef7.tar.gz
pttbbs-a95201ad4d7b597ec13650c28251af838892bef7.tar.bz2
pttbbs-a95201ad4d7b597ec13650c28251af838892bef7.tar.lz
pttbbs-a95201ad4d7b597ec13650c28251af838892bef7.tar.xz
pttbbs-a95201ad4d7b597ec13650c28251af838892bef7.tar.zst
pttbbs-a95201ad4d7b597ec13650c28251af838892bef7.zip
merge ptt.linux
git-svn-id: http://opensvn.csie.org/pttbbs/trunk/pttbbs@2368 63ad8ddf-47c3-0310-b6dd-a9e9d9715204
Diffstat (limited to 'mbbsd/name.c')
-rw-r--r--mbbsd/name.c16
1 files changed, 9 insertions, 7 deletions
diff --git a/mbbsd/name.c b/mbbsd/name.c
index 9253a843..0c9009e8 100644
--- a/mbbsd/name.c
+++ b/mbbsd/name.c
@@ -661,13 +661,14 @@ generalnamecomplete(char *prompt, char *data, int len, size_t nmemb,
int
completeboard_compar(int where, char *str, int len)
{
- return strncasecmp(SHM->bsorted[0][where]->brdname, str, len);
+ boardheader_t *bh = &bcache[SHM->bsorted[0][where]];
+ return strncasecmp(bh->brdname, str, len);
}
int
completeboard_permission(int where)
{
- boardheader_t *bptr = SHM->bsorted[0][where];
+ boardheader_t *bptr = &bcache[SHM->bsorted[0][where]];
return (!(bptr->brdattr & BRD_SYMBOLIC) &&
(GROUPOP() || HasPerm(bptr)) &&
!(bptr->brdattr & BRD_GROUPBOARD));
@@ -676,28 +677,29 @@ completeboard_permission(int where)
char *
completeboard_getname(int where)
{
- return SHM->bsorted[0][where]->brdname;
+ return bcache[SHM->bsorted[0][where]].brdname;
}
/* general complete functions (utmpshm) */
int
completeutmp_compar(int where, char *str, int len)
{
- return strncasecmp(SHM->sorted[SHM->currsorted][0][where]->userid,
- str, len);
+ userinfo_t *u = &SHM->uinfo[SHM->sorted[SHM->currsorted][0][where]];
+ return strncasecmp(u->userid, str, len);
}
int
completeutmp_permission(int where)
{
+ userinfo_t *u = &SHM->uinfo[SHM->sorted[SHM->currsorted][0][where]];
return (unlikely(HAS_PERM(PERM_SYSOP)) ||
unlikely(HAS_PERM(PERM_SEECLOAK)) ||
// !SHM->sorted[SHM->currsorted][0][where]->invisible);
- isvisible(currutmp, SHM->sorted[SHM->currsorted][0][where]));
+ isvisible(currutmp, u));
}
char *
completeutmp_getname(int where)
{
- return SHM->sorted[SHM->currsorted][0][where]->userid;
+ return SHM->uinfo[SHM->sorted[SHM->currsorted][0][where]].userid;
}