[Ecls-list] ffi broken in windows
Dustin Long
dlong at stevens.edu
Wed Dec 26 17:16:02 UTC 2007
Juanjo,
I see. What is the overall goal with being allowed to load a FASL file
more than once? If it is to support environments like SLIME, then this
solution works, as newly made FASLs have newer modification times (I
have been testing it in SLIME for a long time now). If the goal is just
to allow user to load the same FASL without anything changing, this
solution is at least usable since it returns the same entry that was
already loaded. Is there some other case where we want a user to be able
to reload a FASL and get some other result?
If there is something I'm missing, perhaps another solution would be to
check file extensions, and never reload a file with the dll extension.
Dustin
Juan Jose Garcia-Ripoll wrote:
> Hi Dustin,
>
> we have to somehow find another solution, as your patch prevents users
> from loading the same FASL file twice, which should be allowed.
>
> Juanjo
>
> On Dec 26, 2007 3:02 AM, Dustin Long <dlong at stevens.edu> wrote:
>
>> There is a problem with how ffi currently loads libraries in windows. Each call to def-function loads a new instance of a dll, which breaks any libraries that rely on shared state. The fix is to only copy and reload libraries if they've changed since they were last loaded. A patch is attached, and here is a link to a simple example demonstrating the problem:
>> http://personal.stevens.edu/~dlong/load-time-test-case.zip
>>
>> Dustin
>>
>>
>> -------------------------------------------------------------------------
>> This SF.net email is sponsored by: Microsoft
>> Defy all challenges. Microsoft(R) Visual Studio 2005.
>> http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
>> _______________________________________________
>> Ecls-list mailing list
>> Ecls-list at lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/ecls-list
>>
>>
>>
>
>
>
>
More information about the ecl-devel
mailing list