Hi,
I'm working with 6.5.1 (alpha) and Firebird 1.5.3
I've had bug reports from a couple of clients of what looks like double frees during the clean up of the TZConnection.
Here's the relevant part of the bug report:
exception class : EAccessViolation
exception message : Access violation at address 005C737A. Read of address FFFFFFFF.
main thread ($ffc):
005c737a +00 ???
3040421c +08 MPSpare.exe System TObject.Free
3058cad9 +4d MPSpare.exe ZTokenizer 745 +4 TZSymbolNode.Destroy
3040421c +08 MPSpare.exe System TObject.Free
3058d13b +17 MPSpare.exe ZTokenizer 955 +1 TZSymbolState.Destroy
3040421c +08 MPSpare.exe System TObject.Free
3058d540 +74 MPSpare.exe ZTokenizer 1142 +8 TZTokenizer.Destroy
304073dd +1d MPSpare.exe System TInterfacedObject._Release
304072e8 +10 MPSpare.exe System @IntfClear
30405f07 +bf MPSpare.exe System @FinalizeArray
30405e1c +20 MPSpare.exe System @FinalizeRecord
3040428a +12 MPSpare.exe System TObject.CleanupInstance
304041cd +05 MPSpare.exe System TObject.FreeInstance
304045de +02 MPSpare.exe System @ClassDestroy
305ac670 +28 MPSpare.exe ZDbcConnection 234 +1 TZAbstractDriver.Destroy
304073dd +1d MPSpare.exe System TInterfacedObject._Release
304072e8 +10 MPSpare.exe System @IntfClear
3060c64e +3a MPSpare.exe ZDbcInterbase6 761 +2 Finalization
30404d48 +44 MPSpare.exe System FinalizeUnits
3042d45c +54 MPSpare.exe madExcept InterceptFinalizeUnits
30405021 +59 MPSpare.exe System @Halt0
306bf68c +40 MPSpare.exe MPSpare 56 +4 initialization
Worth switching to FreeAndNil() throughout the cleanup, maybe?
Possible Double Free during cleanup
Moderators: gto, cipto_kh, EgonHugeist