Re: [AD] Indexed datafiles |
[ Thread Index |
Date Index
| More lists.liballeg.org/allegro-developers Archives
]
On Wed, 2005-12-28 at 11:49 +0100, Evert Glebbeek wrote:
> On Wednesday 28 December 2005 00:56, Elias Pschernig wrote:
> [graphics mode vtables and resizable windows]
> > I don't think we decided on vtables yet. We should probably soon.
>
> Tell me what entries I should add and what they should look like and I can
> add them.
> This reminds me, did we have some sort of consensus about `dynamic' vtables
> and defining a vtable interface to addon-libraries?
> I have some more to say, but that should go in its own post I think.
Yes, that's what i was referring to, and yes.
> > Yes. So, things like datafile indexing or config file listing can go
> > into 4.2 (they require no extra work), but new things go into 4.3. Which
> > means, we should apply those two to 4.2 in any case, right?
>
> Well, it used to be that 4.even.n->4.even.n+1 only contained bugfixes,
> which this isn't. I'm ok to relax that, but we should at least consider it
> carefully before we decide to do that.
> For instance, what happens when a 4.2.1 programme loads a 4.2.0 DLL
> (or .so)? Bad things, obviously, if it tries to use symbols that aren't
> there. I don't think it's a problem in Linux, since I think the loader
> will complain about missing functions in that case, but I don't know about
> Windows. Does Allegro detect that the DLL it's trying to load is outdated
> and fail (ie, install_allegro() returns an error code)? Right now, I don't
> think it does, but if we're going to do something like this it should.
>
We do check for DLL compatibility in allegro_init:
if (MAKE_VERSION(ALLEGRO_VERSION, ALLEGRO_SUB_VERSION, ALLEGRO_WIP_VERSION) !=
_get_allegro_version()) {
ustrzcpy(allegro_error, ALLEGRO_ERROR_SIZE, get_config_text("Library version mismatch"));
return !0;
}
Right now, this won't catch the 4.2.1 -> 4.2.0 case, since
_get_allegro_version will return the same number for all stable version
- guess we should adjust that.
--
Elias Pschernig