From fa58d071ff9032f6efa7316e724d6c49f78b7abe Mon Sep 17 00:00:00 2001 From: ptt Date: Fri, 30 Apr 2004 04:10:06 +0000 Subject: a little buf of 'S' git-svn-id: http://opensvn.csie.org/pttbbs/trunk/pttbbs@1897 63ad8ddf-47c3-0310-b6dd-a9e9d9715204 --- mbbsd/read.c | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) (limited to 'mbbsd/read.c') diff --git a/mbbsd/read.c b/mbbsd/read.c index 32ac0c05..ea3c6305 100644 --- a/mbbsd/read.c +++ b/mbbsd/read.c @@ -334,7 +334,7 @@ select_read(keeploc_t * locmem, int sr_mode) fileheader_t fhs[READSIZE]; char newdirect[MAXPATHLEN]; char keyword[TTLEN + 1] = ""; - char genbuf[MAXPATHLEN], *p; + char genbuf[MAXPATHLEN], *p = strstr(currdirect, "SR"); static int _mode = 0; int len, fd, fr, i, count=0, reference = 0; @@ -358,13 +358,14 @@ select_read(keeploc_t * locmem, int sr_mode) } else { - if(_mode & sr_mode & (RS_TITLE | RS_NEWPOST | RS_MARK)) return DONOTHING; - // Ptt: only once for these two modes. + if(p && _mode & sr_mode & (RS_TITLE | RS_NEWPOST | RS_MARK)) + return DONOTHING; + // Ptt: only once for these modes. if(sr_mode & RS_TITLE) strcpy(keyword, subject(fh->title)); } - if((p = strstr(currdirect, "SR"))==NULL) + if(p == NULL) _mode = sr_mode; else _mode |= sr_mode; -- cgit v1.2.3