]> granicus.if.org Git - php/commit
Fixed bug #47803
authorAnatol Belski <ab@php.net>
Wed, 24 Feb 2016 10:40:35 +0000 (11:40 +0100)
committerAnatol Belski <ab@php.net>
Wed, 24 Feb 2016 10:40:35 +0000 (11:40 +0100)
commitff115e285ab5192f9e12a43d5dc202d88b01f1ea
tree7f21ce8ef1375c62ba7c68631ecc2ecff53e0c85
parent9623d2dd83a0bace42e14d965d2303349c7f235a
Fixed bug #47803

Executing prepared statements is succesfull only for the first two statements

The reworked patch descends to the bug #69526 which is fixed by
this as well. The broken logic in the current code was, that
SQLDescribeParam was executed in odbc_execute every time. This piece
is now moved into odbc_prepare and the results are carried on in an
additional structure.

Since the ext/odbc headers are not being currently installed and the
corresponding structs like odbc_result are not used outside ext/odbc,
the binary compatibility persists. Executing SQLDescribeParam only once
in odbc_prepare is also an optimization as the filds usually won't
change that fast and thus requestind the descriptions on every
execution is not required.
ext/odbc/php_odbc.c
ext/odbc/php_odbc_includes.h