<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1">
</head>
<body bgcolor="#FFFFFF" text="#000000">
<div class="moz-text-flowed" style="font-family: -moz-fixed;
font-size: 12px;" lang="x-western">I have been investigating
issues in BibleTime related to locked modules. I have found a
repeatable case I have tried in 2.8, 2.9 and 2.10git on linux. I
can have a window open to the NET Bible (paid version, I have the
key installed) and am able to change Bible references, etc. but at
the same time the Bookshelf will show the module as being locked
and won't let me open another window. So it appears that the
method of determining locked status in the Bookshelf is not
consistent with the module actually being unlocked.
<br>
<br>
The module is unlocked when we call setCipherKey in
CSwordModuleInfo. This is working fine.
<br>
<br>
The Bookshelf calls CSwordModuleInfo::unlockKeyIsValid() to
determine if the module is unlocked. In the repeatable problem
case the unlockKeyIsValid function calls getRawEntryBuf in sword
and it returns an empty string which indicates the module is
locked. I have debugged down into sword at this point, but because
of the lack of comments in sword code and the fact that involves
calculating offsets into buffers (no documentation on how this
works), uncompress, etc. I have not been able to figure out where
the problem is.
<br>
<br>
I am getting a little frustrated and wondering if anyone has
thoughts about this.
<br>
<br>
Here is the repeatable case:
<br>
<br>
Open BibleTime
<br>
Open NET Bible (paid version with key)
<br>
Open ESV Bible in parallel in same window as NET Bible
<br>
Changing verse references works fine.
<br>
Bookshelf shows NET Bible unlocked
<br>
Close BibleTime
<br>
Open BibleTime
<br>
Session is restored showing NET and ESV in parallel
<br>
Changing verse references works fine.
<br>
Bookshelf shows NET Bible locked <--- error
<br>
Remove the ESV Bible that is in parallel
<br>
Bookshelf show NET Bible unlocked
<br>
<br>
I have not seen the problem without having a second Bible in
parallel with NET. I am not sure how to write a small example
using only sword. I was able to write a small example for a
different sword issue recently.
<br>
<br>
Gary
<br>
<br>
<br>
</div>
</body>
</html>