Alexandre Julliard wrote:
One problem with your version scheme is that there's no obvious way of determining which version is newer, or compatible. A simple string comparison won't work for that purpose.
By coexisting different versions you mean in one Wine prefix? Yes, it would be possible, but I don't see much point of it. If you think it should be done this way, I may implement so (it prevents current patches, these changes would be in another peace of code).
A wine prefix dir needs to be portable across Wine versions, you should be able to upgrade/downgrade Wine while keeping the prefix dir. So if compatibility across Gecko versions is not guaranteed we have to support installing multiple versions in parallel.
I've sent a patch that fixes these issues. Now we have the supported version, that is installed by installer, and 'known to work' versions, that are checked while searching the installation. Strings are enough to identify the version. We have only a short list (currently one, two will be soon) of versions to check. The compatibility with older version will get worse in the future and someday we may decide to remove older version from the list (by then most users will probably have newer Gecko installed). As each Gecko version is installed in a different location and in target location we expect specific version, I've changed the version check in the loading code to fail if it finds an unexpected version. It will probably be a good idea to add an option to identify a Gecko installation that is not checked against versions to make testing different Geckos easier. I hope it is an acceptable solution.
Thanks, Jacek