summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--pttbbs/daemon/boardd/boardd.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/pttbbs/daemon/boardd/boardd.c b/pttbbs/daemon/boardd/boardd.c
index f4efa5bd..b759db10 100644
--- a/pttbbs/daemon/boardd/boardd.c
+++ b/pttbbs/daemon/boardd/boardd.c
@@ -122,7 +122,9 @@ void answer_key(const char *key, int keylen, struct evbuffer *buf)
} else
return;
} else if (strncmp(key, "tobid.", 6) == 0) {
- bid = getbnum(key + 6);
+ char *_key = strndup(key, keylen);
+ bid = getbnum(key);
+ free(_key);
bptr = getbcache(bid);
if (!bptr->brdname[0] || BOARD_HIDDEN(bptr))