summaryrefslogtreecommitdiffstats
path: root/mbbsd/talk.c
diff options
context:
space:
mode:
authorkcwu <kcwu@63ad8ddf-47c3-0310-b6dd-a9e9d9715204>2007-09-21 01:18:53 +0800
committerkcwu <kcwu@63ad8ddf-47c3-0310-b6dd-a9e9d9715204>2007-09-21 01:18:53 +0800
commitb9539de0ffa696b5f8debe2d3e91e4eab81004fa (patch)
tree0d7dcb34b8264f4e6579452ee580c41d55f5cc85 /mbbsd/talk.c
parent2b3b00dc185e362e46f93a6ad50fb4d423452551 (diff)
downloadpttbbs-b9539de0ffa696b5f8debe2d3e91e4eab81004fa.tar
pttbbs-b9539de0ffa696b5f8debe2d3e91e4eab81004fa.tar.gz
pttbbs-b9539de0ffa696b5f8debe2d3e91e4eab81004fa.tar.bz2
pttbbs-b9539de0ffa696b5f8debe2d3e91e4eab81004fa.tar.lz
pttbbs-b9539de0ffa696b5f8debe2d3e91e4eab81004fa.tar.xz
pttbbs-b9539de0ffa696b5f8debe2d3e91e4eab81004fa.tar.zst
pttbbs-b9539de0ffa696b5f8debe2d3e91e4eab81004fa.zip
* fix bug: don't getdata() on non-local variable directly, to avoid reentrant crash.
git-svn-id: http://opensvn.csie.org/pttbbs/trunk/pttbbs@3564 63ad8ddf-47c3-0310-b6dd-a9e9d9715204
Diffstat (limited to 'mbbsd/talk.c')
-rw-r--r--mbbsd/talk.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/mbbsd/talk.c b/mbbsd/talk.c
index e2bc8354..85d1300b 100644
--- a/mbbsd/talk.c
+++ b/mbbsd/talk.c
@@ -2911,8 +2911,10 @@ userlist(void)
case 'N':
if (HasUserPerm(PERM_LOGINOK)) {
+ char tmp_nick[sizeof(cuser.nickname)];
oldgetdata(1, 0, "·sªº¼ÊºÙ: ",
- cuser.nickname, sizeof(cuser.nickname), DOECHO);
+ tmp_nick, sizeof(tmp_nick), DOECHO);
+ strlcpy(cuser.nickname, tmp_nick, sizeof(cuser.nickname));
strcpy(currutmp->nickname, cuser.nickname);
redrawall = redraw = 1;
}