=?UTF-8?Q?Andr=C3=A9=20Hentschel=20?=: odbc32: Add winediag message when no drivers could be found.
Alexandre Julliard
julliard at wine.codeweavers.com
Thu Jan 22 15:20:45 CST 2015
Module: wine
Branch: master
Commit: b5732b1c2ee7ca631bdabc0e45483a2ccaefcd40
URL: http://source.winehq.org/git/wine.git/?a=commit;h=b5732b1c2ee7ca631bdabc0e45483a2ccaefcd40
Author: André Hentschel <nerv at dawncrow.de>
Date: Wed Jan 21 23:16:41 2015 +0100
odbc32: Add winediag message when no drivers could be found.
---
dlls/odbc32/proxyodbc.c | 29 +++++++++++++++++++++++------
1 file changed, 23 insertions(+), 6 deletions(-)
diff --git a/dlls/odbc32/proxyodbc.c b/dlls/odbc32/proxyodbc.c
index 89cf154..66b3a65 100644
--- a/dlls/odbc32/proxyodbc.c
+++ b/dlls/odbc32/proxyodbc.c
@@ -49,6 +49,7 @@ static BOOL ODBC_LoadDriverManager(void);
static BOOL ODBC_LoadDMFunctions(void);
WINE_DEFAULT_DEBUG_CHANNEL(odbc);
+WINE_DECLARE_DEBUG_CHANNEL(winediag);
static SQLRETURN (*pSQLAllocConnect)(SQLHENV,SQLHDBC*);
static SQLRETURN (*pSQLAllocEnv)(SQLHENV*);
@@ -1914,11 +1915,19 @@ SQLRETURN WINAPI SQLDrivers(
SQLSMALLINT cbDriverAttrMax,
SQLSMALLINT *pcbDriverAttr)
{
- TRACE("\n");
+ SQLRETURN ret;
+
+ TRACE("direction=%d\n", fDirection);
if (!pSQLDrivers) return SQL_ERROR;
- return pSQLDrivers(henv, fDirection, szDriverDesc, cbDriverDescMax, pcbDriverDesc,
- szDriverAttributes, cbDriverAttrMax, pcbDriverAttr);
+ ret = pSQLDrivers(henv, fDirection, szDriverDesc, cbDriverDescMax, pcbDriverDesc,
+ szDriverAttributes, cbDriverAttrMax, pcbDriverAttr);
+
+ if (ret == SQL_NO_DATA && fDirection == SQL_FETCH_FIRST)
+ ERR_(winediag)("No ODBC drivers could be found. "
+ "Check the settings for your libodbc provider.\n");
+
+ return ret;
}
@@ -2647,11 +2656,19 @@ SQLRETURN WINAPI SQLDriversW(
SQLSMALLINT cbDriverAttrMax,
SQLSMALLINT *pcbDriverAttr)
{
- TRACE("\n");
+ SQLRETURN ret;
+
+ TRACE("direction=%d\n", fDirection);
if (!pSQLDriversW) return SQL_ERROR;
- return pSQLDriversW(henv, fDirection, szDriverDesc, cbDriverDescMax, pcbDriverDesc,
- szDriverAttributes, cbDriverAttrMax, pcbDriverAttr);
+ ret = pSQLDriversW(henv, fDirection, szDriverDesc, cbDriverDescMax, pcbDriverDesc,
+ szDriverAttributes, cbDriverAttrMax, pcbDriverAttr);
+
+ if (ret == SQL_NO_DATA && fDirection == SQL_FETCH_FIRST)
+ ERR_(winediag)("No ODBC drivers could be found. "
+ "Check the settings for your libodbc provider.\n");
+
+ return ret;
}
/*************************************************************************
More information about the wine-cvs
mailing list