From: <br...@us...> - 2004-01-21 21:17:22
|
Update of /cvsroot/htoolkit/HSQL/ODBC In directory sc8-pr-cvs1:/tmp/cvs-serv16689 Modified Files: HSQL.hsc Log Message: Fixed conversion of SqlReal values. Before they where returned as floats by the driver, and the pointer was cast to a double, which produced bad values. Index: HSQL.hsc =================================================================== RCS file: /cvsroot/htoolkit/HSQL/ODBC/HSQL.hsc,v retrieving revision 1.19 retrieving revision 1.20 diff -C2 -d -r1.19 -r1.20 *** HSQL.hsc 21 Jan 2004 20:45:34 -0000 1.19 --- HSQL.hsc 21 Jan 2004 21:17:19 -0000 1.20 *************** *** 593,597 **** SqlSmallInt -> (#const SQL_C_SSHORT) SqlInteger -> (#const SQL_C_SLONG) ! SqlReal -> (#const SQL_C_FLOAT) SqlFloat -> (#const SQL_C_DOUBLE) SqlDouble -> (#const SQL_C_DOUBLE) --- 593,601 ---- SqlSmallInt -> (#const SQL_C_SSHORT) SqlInteger -> (#const SQL_C_SLONG) ! -- SqlReal actually corresponds to a float, not a double, ! -- but we let the driver take care of that conversion ! -- so that we can assume that we always have a C double ! -- to convert to a Haskell Double. ! SqlReal -> (#const SQL_C_DOUBLE) SqlFloat -> (#const SQL_C_DOUBLE) SqlDouble -> (#const SQL_C_DOUBLE) |