On 02/27/2012 08:30 PM, Greg Hellings wrote:
On Mon, Feb 27, 2012 at 10:24 PM, Matthew Talbert<ransom1...@gmail.com>  wrote:
On Mon, Feb 27, 2012 at 11:05 PM, Gary Holmlund<gary.holml...@gmail.com>  wrote:

I am investigating why the searching in BibleTime for the HunKar Bible
begins
Tracing down through sword "book" is set to 39 in
sword:VerseKey::Normalize.
Here is the call stack from setPosition down to Normalize:
book is set to 39 by the following code in sword:VerseKey::Normalize

       if (book<  1) {
        if (--testament>  0) {
         book += BMAX[testament-1]; // versekey.cpp line 1274 ::Normalize
        }
        continue;
       }

I don't think you should be using Normalize here. Normalize should be
used for user input, which could be incorrect, so it will turn out of
range verses (for example) into real verses. So if Normalize is doing
something in this case, I think it means the rest of your code is
wrong.
If I'm reading the stack trace correctly, BibleTime is calling
setPosition() which in turn calls many other things down the stack
until setBook() calls Normalize(). It does not appear that BibleTime
is invoking Normalize().

The issue appears to be arising, if Gary's analysis is correct, in the
handling of the special key value "[Testament Heading]". Perhaps the
presence or absence of such a foreward in the HunKar Bible and similar
are what is generating this problem in BibleTime?

--Greg
Greg,

Yes, I believe that HunKar must have a "[Testament Heading]" and this is possibly a special case that many other modules don't have. If I set the parameter to "1" on versekey.cpp line 522 the indexing of the book works fine.

    if ((!strncmp(buf, "[ Testament ", 12)) &&
        (isdigit(buf[12])) &&
        (!strcmp(buf+13, " Heading ]"))) {
        curKey->Verse(0);
        curKey->Chapter(0);
        curKey->Book(0);  // versekey.cpp line 522 ::ParseVerseList

Gary


_______________________________________________
sword-devel mailing list: sword-devel@crosswire.org
http://www.crosswire.org/mailman/listinfo/sword-devel
Instructions to unsubscribe/change your settings at above page

Reply via email to