Re: dll woes
- Posted by ghaberek (admin) Mar 28, 2015
- 1538 views
If Greg's description is correct, this should only affect two Euphoria-compiled shared objects. A regular C-compiled shared object isn't going to know about the global memory in Euphoria, let alone try to free something from it.
That's what I was saying, yes. I can't remember ever trying to use two Euphoria-compiled shared libraries at the same time. Has anyone tested this on Windows as well?
One problem I foresee with using RTLD_LOCAL, is if YourApp load LibraryA and LibraryB, and then LibraryB also loads LibraryA internally, and LibraryA (which, if local, is now a new instance) relies on some global memory constructs, then YourApp and LibraryB will see different sets of information from LibraryA and that could cause some strange conflicts.
That's just a theory, but I believe that's the difference between loading libraries globally versus locally. I hope I'm wrong on that point.
-Greg