[fpc-devel] Manual reload of a DLL snapshot (with relocations)	causes multiple AV
    Gennadiy Poryev 
    core at barvinok.net
       
    Sat Jan  7 09:42:41 CET 2012
    
    
  
Thank you all for all the helpful suggestions :) Problem is now solved.
As I suspected earlier, RTL uses quite a lot of absolute addressing while calling its internal routines. These addresses are stored both in initialized and uninitialized data sections of DLL (.data and .bss respectively).
While addresses stored in .data are fixed by relocations, addresses in .bss are not, and are initialized to zero by the windows DLL loader. So does my engine now, and everything started to work just fine.
Best regards,
Gennadiy.
    
    
More information about the fpc-devel
mailing list