You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Looking at the code, the direct cause is a missing check on the handle validity. But a deeper look shows that the wire protocol implementation does not properly invalidate the handle, so even if it would have checked for validity before the action, the NPE would still have occurred.
Actions:
* Ensure invalidateHandle() is called when the connection is closed
* Add validity checks in all actions
My assertion that the handle wasn't always invalidated was incorrect. I made validation of database, transaction, statement, blob and service handles more consistent for 2.2.4.
I am not going to port this to 2.3, as the new implementation works differently, I will keep this issue open as a reminder to thoroughly check this in the new implementation in 2.3.
Submitted by: @mrotteveel
Jira_subtask_outward JDBC328
Not all areas of Jaybird check for database handle validity before continuing with an action that uses the database. An example of such problem is a NullPointerException in iscDatabaseInfo; See also Stackoverflow question http://stackoverflow.com/questions/17160036/error-using-jaybird-and-android
Looking at the code, the direct cause is a missing check on the handle validity. But a deeper look shows that the wire protocol implementation does not properly invalidate the handle, so even if it would have checked for validity before the action, the NPE would still have occurred.
Actions:
* Ensure invalidateHandle() is called when the connection is closed
* Add validity checks in all actions
Commits: 40fdb7b FirebirdSQL/fbt-repository@ca7c838
The text was updated successfully, but these errors were encountered: