summaryrefslogtreecommitdiffstats
path: root/mbbsd/bbs.c
diff options
context:
space:
mode:
authorkcwu <kcwu@63ad8ddf-47c3-0310-b6dd-a9e9d9715204>2005-03-12 11:23:27 +0800
committerkcwu <kcwu@63ad8ddf-47c3-0310-b6dd-a9e9d9715204>2005-03-12 11:23:27 +0800
commit7a21e08eca7c72e08fb2a5294b192ebf59a0565a (patch)
tree8e95a68d5495b14e2695916bc8e2e2afc07632f4 /mbbsd/bbs.c
parenta06ea9d2a57526434090ac255aa46cddd1c3ed52 (diff)
downloadpttbbs-7a21e08eca7c72e08fb2a5294b192ebf59a0565a.tar
pttbbs-7a21e08eca7c72e08fb2a5294b192ebf59a0565a.tar.gz
pttbbs-7a21e08eca7c72e08fb2a5294b192ebf59a0565a.tar.bz2
pttbbs-7a21e08eca7c72e08fb2a5294b192ebf59a0565a.tar.lz
pttbbs-7a21e08eca7c72e08fb2a5294b192ebf59a0565a.tar.xz
pttbbs-7a21e08eca7c72e08fb2a5294b192ebf59a0565a.tar.zst
pttbbs-7a21e08eca7c72e08fb2a5294b192ebf59a0565a.zip
move global variable to local, save another 536 bytes
git-svn-id: http://opensvn.csie.org/pttbbs/trunk/pttbbs@2591 63ad8ddf-47c3-0310-b6dd-a9e9d9715204
Diffstat (limited to 'mbbsd/bbs.c')
-rw-r--r--mbbsd/bbs.c34
1 files changed, 19 insertions, 15 deletions
diff --git a/mbbsd/bbs.c b/mbbsd/bbs.c
index ba2c52d4..e4062050 100644
--- a/mbbsd/bbs.c
+++ b/mbbsd/bbs.c
@@ -2080,28 +2080,29 @@ tar_addqueue(int ent, fileheader_t * fhdr, char *direct)
}
#endif
-static int sequent_ent;
-static int continue_flag;
+struct SeqReadArg {
+ int idc;
+ int sequent_ent;
+ int continue_flag;
+};
/* ----------------------------------------------------- */
/* 依序讀新文章 */
/* ----------------------------------------------------- */
static int
-sequent_messages(fileheader_t * fptr)
+sequent_messages(void * voidfptr, void *optarg)
{
- static int idc;
+ fileheader_t *fptr=(fileheader_t*)voidfptr;
+ struct SeqReadArg *arg=(struct SeqReadArg*)optarg;
char genbuf[200];
- if (fptr == NULL)
- return (idc = 0);
-
- if (++idc < sequent_ent)
+ if (++arg->idc < arg->sequent_ent)
return 0;
if (!brc_unread(fptr->filename, brc_num, brc_list))
return 0;
- if (continue_flag)
+ if (arg->continue_flag)
genbuf[0] = 'y';
else {
prints("讀取文章於:[%s] 作者:[%s]\n標題:[%s]",
@@ -2119,7 +2120,7 @@ sequent_messages(fileheader_t * fptr)
if (more(genbuf, YEA) == 0)
outmsg("\033[31;47m \033[31m(R)\033[30m回信 \033[31m(↓,n)"
"\033[30m下一封 \033[31m(←,q)\033[30m離開 \033[m");
- continue_flag = 0;
+ arg->continue_flag = 0;
switch (igetch()) {
case KEY_LEFT:
@@ -2143,7 +2144,7 @@ sequent_messages(fileheader_t * fptr)
case KEY_DOWN:
case '\n':
case 'n':
- continue_flag = 1;
+ arg->continue_flag = 1;
}
clear();
@@ -2154,13 +2155,16 @@ static int
sequential_read(int ent, fileheader_t * fhdr, char *direct)
{
char buf[40];
+ struct SeqReadArg arg;
clear();
- sequent_messages((fileheader_t *) NULL);
- sequent_ent = ent;
- continue_flag = 0;
+
+ arg.idc=0;
+ arg.sequent_ent = ent;
+ arg.continue_flag = 0;
+
setbdir(buf, currboard);
- apply_record(buf, sequent_messages, sizeof(fileheader_t));
+ apply_record(buf, sequent_messages, sizeof(fileheader_t), &arg);
return FULLUPDATE;
}