Thread: pgsql: Add PGTYPESchar_free() to avoid cross-module problems onWindows

pgsql: Add PGTYPESchar_free() to avoid cross-module problems onWindows

From
Thomas Munro
Date:
Add PGTYPESchar_free() to avoid cross-module problems on Windows.

On Windows, it is sometimes important for corresponding malloc() and
free() calls to be made from the same DLL, since some build options can
result in multiple allocators being active at the same time.  For that
reason we already provided PQfreemem().  This commit adds a similar
function for freeing string results allocated by the pgtypes library.

Author: Takayuki Tsunakawa
Reviewed-by: Kyotaro Horiguchi
Discussion: https://postgr.es/m/0A3221C70F24FB45833433255569204D1F8AD5D6%40G01JPEXMBYT05

Branch
------
REL9_3_STABLE

Details
-------
https://git.postgresql.org/pg/commitdiff/edabd8f5a4249b95db7421722f88e156c10c8a8e

Modified Files
--------------
doc/src/sgml/ecpg.sgml                             | 24 +++++--
src/interfaces/ecpg/include/Makefile               |  2 +-
src/interfaces/ecpg/include/pgtypes.h              | 17 +++++
src/interfaces/ecpg/include/pgtypes_date.h         |  1 +
src/interfaces/ecpg/include/pgtypes_interval.h     |  1 +
src/interfaces/ecpg/include/pgtypes_numeric.h      |  2 +
src/interfaces/ecpg/include/pgtypes_timestamp.h    |  1 +
src/interfaces/ecpg/pgtypeslib/common.c            | 10 +++
src/interfaces/ecpg/pgtypeslib/exports.txt         |  1 +
.../ecpg/test/expected/pgtypeslib-dt_test.c        | 84 +++++++++++-----------
.../ecpg/test/expected/pgtypeslib-dt_test2.c       | 12 ++--
.../ecpg/test/expected/pgtypeslib-num_test.c       | 10 +--
.../ecpg/test/expected/pgtypeslib-num_test2.c      | 26 +++----
.../ecpg/test/expected/preproc-outofscope.c        |  2 +
src/interfaces/ecpg/test/expected/sql-sqlda.c      |  4 +-
src/interfaces/ecpg/test/pgtypeslib/dt_test.pgc    | 84 +++++++++++-----------
src/interfaces/ecpg/test/pgtypeslib/dt_test2.pgc   | 12 ++--
src/interfaces/ecpg/test/pgtypeslib/num_test.pgc   | 10 +--
src/interfaces/ecpg/test/pgtypeslib/num_test2.pgc  | 26 +++----
src/interfaces/ecpg/test/sql/sqlda.pgc             |  2 +-
20 files changed, 192 insertions(+), 139 deletions(-)