Ticket Hash: | 40de2e997b71610e04d35e968e4a7e8999a6170f | ||
Title: | tdbc::odbc on MacOSX with iODBC driver manager has SQLWCHAR impedance mismatch | ||
Status: | Closed | Type: | Code_Defect |
Severity: | Important | Priority: | Medium |
Subsystem: | Resolution: | Fixed | |
Last Modified: |
2018-06-19 01:21:47 7.05 years ago |
Created: |
2017-09-04 21:03:33 7.84 years ago |
Version Found In: | 1.0.5, current |
User Comments: | ||||
anonymous added on 2017-09-04 21:03:33:
The default ODBC driver manager on MacOSX is iODBC, which uses "typedef wchar_t SQLWCHAR" on POSIX platforms. This clashes with Tcl's "typedef unsigned short Tcl_UniChar". I've tried to solve this in AndroWish/undroidwish with check-in https://www.androwish.org/index.html/ci/868b1367382d582f and tested it with the SQLite3 ODBC driver on MacOSX. The strange observation was that the iODBC translation layer, which converts between wide-char and ANSI entry points, is buggy regarding character counting. The temporary solution was to build the SQLite3 ODBC driver explicitely with wide-char interfaces (configure option --with-winterface). chw added on 2018-01-07 10:46:58: Meanwhile I've updated the iODBC support for MacOSX (and OpenBSD) for version 1.0.6 in this check-in: https://www.androwish.org/index.html/info/d51247f537442255 kbk added on 2018-06-19 01:21:47: Fixed in 1.1.0 |