[fpc-pascal] Reproducible code: DLL calling Firebird crashes

Reinier Olislagers reinierolislagers at gmail.com
Mon Sep 29 16:08:24 CEST 2014


On 29/09/2014 11:19, Mark Morgan Lloyd wrote:
> Reinier Olislagers wrote:
>> 2. In businesslayer.pas, $define CRASH to see the problem.
>> The code in question is:
>> initialization
>>   DBLayer:=TDBInterface.Create;
>>
>> finalization
>>   DBLayer.Free;
>> ... so probably initialization order plays a part?!?
>>
>> How should I fix this?
> 
> What happens if you move the responsibility for initialising and closing
> the database connection to the app-level code? In other words, the app
> does something like
As the demo indicates, that does work (undefine CRASH).

What I would like to know what is the cause of this problem - dlls being
loaded before some kind - what kind? - of initialization is complete?

Anyway, I'll keep digging; probably first looking at geting postgresql
support in anyway.



More information about the fpc-pascal mailing list