- Fixed bug #42414 (some odbc_*() functions incompatible with Oracle ODBC driver)
  patch by: jhml at gmx dot net
This commit is contained in:
Felipe Pena 2009-05-14 01:26:39 +00:00
parent 475cf4d288
commit 652b77243c

View file

@ -3127,6 +3127,10 @@ PHP_FUNCTION(odbc_columns)
schema = NULL;
}
if (cat && cat_len == 0) {
cat = NULL;
}
rc = SQLColumns(result->stmt,
cat, (SQLSMALLINT) cat_len,
schema, (SQLSMALLINT) schema_len,
@ -3189,6 +3193,10 @@ PHP_FUNCTION(odbc_columnprivileges)
efree(result);
RETURN_FALSE;
}
if (cat_len == 0) {
cat = NULL;
}
rc = SQLColumnPrivileges(result->stmt,
cat, SAFE_SQL_NTS(cat),
@ -3265,6 +3273,10 @@ PHP_FUNCTION(odbc_foreignkeys)
efree(result);
RETURN_FALSE;
}
if (pcat_len == 0) {
pcat = NULL;
}
rc = SQLForeignKeys(result->stmt,
pcat, SAFE_SQL_NTS(pcat),
@ -3388,6 +3400,10 @@ PHP_FUNCTION(odbc_primarykeys)
efree(result);
RETURN_FALSE;
}
if (cat_len == 0) {
cat = NULL;
}
rc = SQLPrimaryKeys(result->stmt,
cat, SAFE_SQL_NTS(cat),
@ -3589,6 +3605,10 @@ PHP_FUNCTION(odbc_specialcolumns)
efree(result);
RETURN_FALSE;
}
if (cat_len == 0) {
cat = NULL;
}
rc = SQLSpecialColumns(result->stmt,
type,
@ -3658,6 +3678,10 @@ PHP_FUNCTION(odbc_statistics)
efree(result);
RETURN_FALSE;
}
if (cat_len == 0) {
cat = NULL;
}
rc = SQLStatistics(result->stmt,
cat, SAFE_SQL_NTS(cat),
@ -3721,6 +3745,10 @@ PHP_FUNCTION(odbc_tableprivileges)
efree(result);
RETURN_FALSE;
}
if (cat_len == 0) {
cat = NULL;
}
rc = SQLTablePrivileges(result->stmt,
cat, SAFE_SQL_NTS(cat),