From: Hiroshi Inoue Date: Wed, 15 May 2019 11:58:08 +0000 (+0900) Subject: Correct the rgbInfoValue returned by SQLGetInfo(.., SQL_NUMERIC_FUNCTIONS(SQL_SYSTEM_... X-Git-Tag: REL-11_01_0000~3 X-Git-Url: http://waps.l3s.uni-hannover.de/gitweb/queryCache.php?a=commitdiff_plain;h=f11846220dcfe8c2cc0862bb09e831761014ba53;p=psqlodbc.git Correct the rgbInfoValue returned by SQLGetInfo(.., SQL_NUMERIC_FUNCTIONS(SQL_SYSTEM_FUNCTIONS or SQL_STRING_FUNCTIONS, ..). Pointed out by Grant Shirreffs. --- diff --git a/info.c b/info.c index c2c4ff0..452dabf 100644 --- a/info.c +++ b/info.c @@ -454,7 +454,12 @@ MYLOG(0, "CONVERT_FUNCTIONS=" FORMAT_ULEN "\n", value); case SQL_NUMERIC_FUNCTIONS: /* ODBC 1.0 */ len = 4; - value = 0; + value = SQL_FN_NUM_ABS | SQL_FN_NUM_ACOS | SQL_FN_NUM_ASIN | SQL_FN_NUM_ATAN | + SQL_FN_NUM_ATAN2 | SQL_FN_NUM_CEILING | SQL_FN_NUM_COS | SQL_FN_NUM_COT | + SQL_FN_NUM_DEGREES | SQL_FN_NUM_EXP | SQL_FN_NUM_FLOOR | SQL_FN_NUM_LOG | + SQL_FN_NUM_LOG10 | SQL_FN_NUM_MOD | SQL_FN_NUM_PI | SQL_FN_NUM_POWER | + SQL_FN_NUM_RADIANS | SQL_FN_NUM_RAND | SQL_FN_NUM_ROUND | SQL_FN_NUM_SIGN | + SQL_FN_NUM_SIN | SQL_FN_NUM_SQRT | SQL_FN_NUM_TAN | SQL_FN_NUM_TRUNCATE; break; case SQL_ODBC_API_CONFORMANCE: /* ODBC 1.0 */ @@ -613,14 +618,11 @@ MYLOG(0, "CONVERT_FUNCTIONS=" FORMAT_ULEN "\n", value); case SQL_STRING_FUNCTIONS: /* ODBC 1.0 */ len = 4; - value = (SQL_FN_STR_CONCAT | - SQL_FN_STR_LCASE | - SQL_FN_STR_LENGTH | - SQL_FN_STR_LOCATE | - SQL_FN_STR_LTRIM | - SQL_FN_STR_RTRIM | - SQL_FN_STR_SUBSTRING | - SQL_FN_STR_UCASE); + value = SQL_FN_STR_ASCII | SQL_FN_STR_CHAR | SQL_FN_STR_CONCAT | + SQL_FN_STR_INSERT | SQL_FN_STR_LCASE | SQL_FN_STR_LEFT | + SQL_FN_STR_LENGTH | SQL_FN_STR_LOCATE | SQL_FN_STR_LOCATE_2 | + SQL_FN_STR_LTRIM | SQL_FN_STR_REPEAT | SQL_FN_STR_RIGHT | + SQL_FN_STR_RTRIM | SQL_FN_STR_SPACE | SQL_FN_STR_SUBSTRING | SQL_FN_STR_UCASE; break; case SQL_SUBQUERIES: /* ODBC 2.0 */ @@ -634,7 +636,7 @@ MYLOG(0, "CONVERT_FUNCTIONS=" FORMAT_ULEN "\n", value); case SQL_SYSTEM_FUNCTIONS: /* ODBC 1.0 */ len = 4; - value = 0; + value = SQL_FN_SYS_IFNULL | SQL_FN_SYS_USERNAME; break; case SQL_TABLE_TERM: /* ODBC 1.0 */