diff options
author | kcwu <kcwu@63ad8ddf-47c3-0310-b6dd-a9e9d9715204> | 2007-06-19 01:14:32 +0800 |
---|---|---|
committer | kcwu <kcwu@63ad8ddf-47c3-0310-b6dd-a9e9d9715204> | 2007-06-19 01:14:32 +0800 |
commit | f5649a5aed5a9fc3b31b7964087252525fca5e60 (patch) | |
tree | b9ed59307e2eda718c057f1aa0ce016619b44f1d /mbbsd/friend.c | |
parent | 2edb2692f086fee13c46311bfcdab4eae847447c (diff) | |
download | pttbbs-f5649a5aed5a9fc3b31b7964087252525fca5e60.tar pttbbs-f5649a5aed5a9fc3b31b7964087252525fca5e60.tar.gz pttbbs-f5649a5aed5a9fc3b31b7964087252525fca5e60.tar.bz2 pttbbs-f5649a5aed5a9fc3b31b7964087252525fca5e60.tar.lz pttbbs-f5649a5aed5a9fc3b31b7964087252525fca5e60.tar.xz pttbbs-f5649a5aed5a9fc3b31b7964087252525fca5e60.tar.zst pttbbs-f5649a5aed5a9fc3b31b7964087252525fca5e60.zip |
* use strtok_r() instead of strtok(). fix bad strtok() usages.
git-svn-id: http://opensvn.csie.org/pttbbs/trunk/pttbbs@3545 63ad8ddf-47c3-0310-b6dd-a9e9d9715204
Diffstat (limited to 'mbbsd/friend.c')
-rw-r--r-- | mbbsd/friend.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/mbbsd/friend.c b/mbbsd/friend.c index c73932af..50f00887 100644 --- a/mbbsd/friend.c +++ b/mbbsd/friend.c @@ -291,10 +291,11 @@ inline void friend_load_real(int tosort, int maxf, *destn = 0; } else{ + char *strtok_pos; tarray = (int *)malloc(sizeof(int) * maxf); --maxf; /* 因為最後一個要填 0, 所以先扣一個回來 */ while( fgets(genbuf, STRLEN, fp) && nFriends < maxf ) - if( (p = strtok(genbuf, str_space)) && + if( (p = strtok_r(genbuf, str_space, &strtok_pos)) && (uid = searchuser(p, NULL)) ) tarray[nFriends++] = uid; fclose(fp); @@ -379,9 +380,11 @@ friend_edit(int type) move(3, 0); column = 0; while (fgets(genbuf, STRLEN, fp)) { + char *space; if (genbuf[0] <= ' ') continue; - strtok(genbuf, str_space); + space = strpbrk(genbuf, str_space); + if (space) *space = '\0'; AddNameList(genbuf); prints("%-13s", genbuf); count++; |