diff --git "a/C:\\Users\\kmaslyuk\\AppData\\Local\\Temp\\TortoiseGit\\raw67AD.tmp\\rawstr-2c0baa1-left.cpp" "b/D:\\dev\\sword\\src\\modules\\common\\rawstr.cpp" index 79c7cf2..ddaa01c 100644 --- "a/C:\\Users\\kmaslyuk\\AppData\\Local\\Temp\\TortoiseGit\\raw67AD.tmp\\rawstr-2c0baa1-left.cpp" +++ "b/D:\\dev\\sword\\src\\modules\\common\\rawstr.cpp" @@ -165,7 +165,7 @@ void RawStr::getIDXBuf(long ioffset, char **buf) const * away - number of entries before of after to jump * (default = 0) * - * RET: error status -1 general error; -2 new file + * RET: error status -1 general error; -2 new file; -3 inconsecutive index */ signed char RawStr::findOffset(const char *ikey, __u32 *start, __u16 *size, long away, __u32 *idxoff) const @@ -274,6 +274,9 @@ signed char RawStr::findOffset(const char *ikey, __u32 *start, __u16 *size, long if (idxoff) *idxoff = tryoff; + if(away > 0 && tmpStart < *start) + retval = -3; + *start = swordtoarch32(tmpStart); *size = swordtoarch16(tmpSize);