From 290e00d1311a1e074a6bac3e978cf6c27f06979d Mon Sep 17 00:00:00 2001 From: rswindell <> Date: Tue, 7 Nov 2000 11:55:08 +0000 Subject: [PATCH] Fixed CR/LF expectations on guru data files. --- src/sbbs3/chat.cpp | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/src/sbbs3/chat.cpp b/src/sbbs3/chat.cpp index f2f066fea5..4ad16a5f0f 100644 --- a/src/sbbs3/chat.cpp +++ b/src/sbbs3/chat.cpp @@ -1383,19 +1383,21 @@ void sbbs_t::guruchat(char *line, char *gurubuf, int gurunum) answers=0; while(*ptr && answers<100 && ptr<gurubuf+len) { i=0; - while(*ptr && *ptr!=CR && i<512 && ptr<gurubuf+len) { + while(*ptr && *ptr!=CR && *ptr!=LF && i<512 && ptr<gurubuf+len) { answer[answers][i]=*ptr; ptr++; i++; - if(*ptr=='\\' && *(ptr+1)==CR) { /* multi-line answer */ - ptr+=3; /* skip \CRLF */ + /* multi-line answer */ + if(*ptr=='\\' && (*(ptr+1)==CR || *(ptr+1)==LF)) { + ptr++; /* skip \ */ + while(*ptr && *ptr<SP) ptr++; /* skip [CR]LF */ answer[answers][i++]=CR; answer[answers][i++]=LF; } } answer[answers][i]=0; if(!strlen(answer[answers]) || answer[answers][0]=='(') { ptr-=strlen(answer[answers]); break; } - ptr+=2; /* skip CRLF */ + while(*ptr && *ptr<SP) ptr++; /* skip [CR]LF */ answers++; } if(answers==100) while(*ptr && *ptr!='(' && ptr<gurubuf+len) -- GitLab