vladvro
Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору SciTEIO.cxx строка 1026 Код: class FileReader { BufferedFile *bf; int lineNum; bool lastWasCR; enum {bufLen = 1000}; //!-start-[FileReaderbufLen] char buf[bufLen+1]; SString lineToCompare; SString lineToShow; //!-end-[FileReaderbufLen] bool caseSensitive; public: FileReader(FilePath fPath, bool caseSensitive_) { bf = new BufferedFile(fPath); lineNum = 0; lastWasCR = false; caseSensitive = caseSensitive_; } ~FileReader() { delete bf; bf = NULL; } const char *Next() { //!-change-[FileReaderbufLen] if (bf->Exhausted()) { return NULL; } //!-start-[FileReaderbufLen] lineToCompare.clear(); lineToShow.clear(); //!-end-[FileReaderbufLen] int i = 0; while (!bf->Exhausted()) { int ch = bf->NextByte(); if (i == 0 && lastWasCR && ch == '\n') { lastWasCR = false; ch = 0; } else if (ch == '\r' || ch == '\n') { lastWasCR = ch == '\r'; break; //!-start-[FileReaderbufLen] } else { buf[i++] = static_cast<char>(ch); if (i == bufLen) { buf[i] = '\0'; lineToShow += buf; i = 0; } } } buf[i] = '\0'; lineToShow += buf; //!-end-[FileReaderbufLen] lineNum++; /* strcpy(lineToCompare, lineToShow); if (!caseSensitive) { for (int j = 0; j < i; j++) { if (lineToCompare[j] >= 'A' && lineToCompare[j] <= 'Z') { lineToCompare[j] = static_cast<char>(lineToCompare[j] - 'A' + 'a'); } } } return lineToCompare; */ //!-start-[FileReaderbufLen] lineToCompare = lineToShow; if (!caseSensitive) { lineToCompare.lowercase(); } return lineToCompare.c_str(); //!-end-[FileReaderbufLen] } int LineNumber() { return lineNum; } const char *Original() { //!-change-[FileReaderbufLen] return lineToShow.c_str(); //!-change-[FileReaderbufLen] } | Данный код внедрен в форум с помощью скрипта vladvro SciTEIO.cxx строка 1125 Код: if ((gf & grepBinary) || !fr.BufferContainsNull()) { while (const char *line = fr.Next()) { //!-change-[FileReaderbufLen] char *match = strstr(line, searchString); if (match) { if (gf & grepWholeWord) { const char *lineEnd = line + strlen(line); //!-change-[FileReaderbufLen] | Данный код внедрен в форум с помощью скрипта vladvro | Всего записей: 281 | Зарегистр. 05-04-2006 | Отправлено: 16:12 25-05-2007 | Исправлено: vladvro, 16:35 26-05-2007 |
|