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
The JNI parameterbuffer implemention (org.firebirdsql.gds.impl.jni.ParameterBufferBase, specifically inner class NumericArgument) writes integers incorrectly. Instead of prefixing the length in bytes, it simply writes the 4 bytes of the value. This probably wasn't noticed before because of JDBC284, and the fact that the only other int-property was an extension property which is never written out to the buffer.
Also the gds.impl.jni and gds.impl.wire versions of these classes are almost identical (if not identical): refactor to a common base class.
It would be a good idea to restructe the ParameterBuffer implementation hierarchy to be similar to the implementation in the .NET provider, that will result in a lot less duplication of code.
Submitted by: @mrotteveel
Relate to JDBC284
Is related to JDBC286
Jira_subtask_outward JDBC287
The JNI parameterbuffer implemention (org.firebirdsql.gds.impl.jni.ParameterBufferBase, specifically inner class NumericArgument) writes integers incorrectly. Instead of prefixing the length in bytes, it simply writes the 4 bytes of the value. This probably wasn't noticed before because of JDBC284, and the fact that the only other int-property was an extension property which is never written out to the buffer.
Also the gds.impl.jni and gds.impl.wire versions of these classes are almost identical (if not identical): refactor to a common base class.
Commits: 2e9a1e4 c342a29
The text was updated successfully, but these errors were encountered: