Pascal Georges wrote:

Hi!

>> openBase does no conversion, tries to open the base as si4, resulting in
>> "Can not open index", no conversion takes place, CC-default-DB stays a
>> si3 db, it is not opened, Scid opens "something" empty that looks like a
>> CC db. (Reading the header seems to work?!) => All games are treated as
>> new games, and then it is broken. I think, however, I should not handle
>> this in CC code.
> 
> There is no choice here.

It is not about a choice. I just tell what is happening.

> Either the base is opened with ::file::Open

Point is: in short you changed the API form openBase() to ::file::Open() 
without removing the old function. Right?

Do openBase() and ::file::Open() do exactly the same? If so, IMHO we 
should drop openBase().

Do we have to crosscheck the code for other calls to openBase()? (I did 
not invent such calls I just take those things from other parts of Scids 
code, as Scid API is RTFS-documented only.)

> and the conversion will be allowed by the user after a warning or the
> base is silently upgraded by calling "sc_base upgrade" (which takes 3
> seconds every million of games). Then the default extension has to be
> changed to si4 instead of si3.

I do not want to prevent Scid from upgrading the base, to the contrary. 
This is not my point. My point is: does Scid handle all this correctly 
in all other occasions which means that I'm the only one that uses 
openBase() and it is changed in all other locations where it existed. 
And using grep tells me that there're about as many calls to openBase() 
as to ::file::Open.

>> - Similar to the last point: we've an issue with all "Reopen" lists.
>> They store the si3 extension, but the base gets si4 upon opening. This
>> gets Scid to open "something" like in the CC case mentioned above.
> 
> I see no real issue here.

The point is, that the list of "last used" all contains pointers to the 
explicit si3 form. si3 != si4 => si4 forms are appended to the list 
while si3 forms stay there. I know that those who can read have a clear 
advantage, but my experience tells me that most users do not look that 
closely.

>> Du to the first point, to get CC back into working condition I had to
>> open the CC database once by hand, this converts it to v4-format. Then I
>> had to edit the name of the default database to correctly point to si4
>> instead of si3.
>>
>> Would it be wise to see if a si4 file exists in case openBase gets a
>> call for the si3 extension to catch this sort of error in a central
>> place?
> 
> See ::file::Open

Again, THIS is not my point.


-- 

Kind regards,                /                 War is Peace.
                             |            Freedom is Slavery.
Alexander Wagner            |         Ignorance is Strength.
                             |
                             | Theory     : G. Orwell, "1984"
                            /  In practice:   USA, since 2001

------------------------------------------------------------------------------
Enter the BlackBerry Developer Challenge  
This is your chance to win up to $100,000 in prizes! For a limited time, 
vendors submitting new applications to BlackBerry App World(TM) will have
the opportunity to enter the BlackBerry Developer Challenge. See full prize  
details at: http://p.sf.net/sfu/Challenge
_______________________________________________
Scid-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/scid-users

Reply via email to