Occasional access violation in ODAC 13.3.1 when TOraSession is destroyed
Hello,
We recently updated from ODAC version 13.2.1 to 13.3.1 and are now seeing an occasional access violation when TOraSession is destroyed.
I am not able to reproduce this at will so I cannot provide an app to demonstrate the bug at this time.
I do, however, have a call stack for you:
- -----------------------------------------------------------------------------------------------------
- |Unit |Class |Procedure/Method |Line
- -----------------------------------------------------------------------------------------------------
- |System.Classes |TList |Get |
- |Ora |TOraSession |RemoveChangeNotifications |3185[2]
- |Ora |TOraSession |Notification |3158[6]
- |System.Classes |TComponent |Notification |
- |System.Classes |TComponent |RemoveComponent |
- |System.Classes |TComponent |Destroy |
- |Data.DB |TCustomConnection |Destroy |3512[1]
- |DBAccess |TCustomDAConnection |Destroy |3939[23]
- |Ora |TOraSession |Destroy |2200[11]
Comparing the source of 13.2.1 to 13.3.1, I see some changes in Ora.pas with ChangeNotifications that I believe are the cause. Please look at your changes in the following procedures:
TOraSession.Notification
TOraSession.Destroy
TOraSession.RemoveChangeNotifications
We do not use the TOraChangeNotification component at all in our application.
Thank you.