From: Hans Leidekker hans@codeweavers.com
--- dlls/odbc32/proxyodbc.c | 1 + dlls/odbc32/tests/odbc32.c | 10 ++++++++++ 2 files changed, 11 insertions(+)
diff --git a/dlls/odbc32/proxyodbc.c b/dlls/odbc32/proxyodbc.c index 13eba50fdb4..d6e1888694f 100644 --- a/dlls/odbc32/proxyodbc.c +++ b/dlls/odbc32/proxyodbc.c @@ -432,6 +432,7 @@ static struct connection *create_connection( struct environment *env ) struct connection *ret; if (!(ret = calloc( 1, sizeof(*ret) ))) return NULL; init_object( &ret->hdr, SQL_HANDLE_DBC, &env->hdr ); + ret->attr_login_timeout = 15; return ret; }
diff --git a/dlls/odbc32/tests/odbc32.c b/dlls/odbc32/tests/odbc32.c index 9ef119c205a..905ab2ba482 100644 --- a/dlls/odbc32/tests/odbc32.c +++ b/dlls/odbc32/tests/odbc32.c @@ -126,6 +126,11 @@ static void test_SQLConnect( void ) ok( len == strlen(str), "got %d\n", len ); trace( "version %s\n", str );
+ timeout = 0xdeadbeef; + ret = SQLGetConnectAttr( con, SQL_ATTR_LOGIN_TIMEOUT, &timeout, sizeof(timeout), NULL ); + ok( ret == SQL_SUCCESS, "got %d\n", ret ); + ok( timeout == 15, "wrong timeout %d\n", timeout ); + ret = SQLConnect( con, (SQLCHAR *)"winetest", SQL_NTS, (SQLCHAR *)"winetest", SQL_NTS, (SQLCHAR *)"winetest", SQL_NTS ); if (ret == SQL_ERROR) diag( con, SQL_HANDLE_DBC ); @@ -137,6 +142,11 @@ static void test_SQLConnect( void ) return; }
+ timeout = 0xdeadbeef; + ret = SQLGetConnectAttr( con, SQL_ATTR_LOGIN_TIMEOUT, &timeout, sizeof(timeout), NULL ); + ok( ret == SQL_SUCCESS, "got %d\n", ret ); + todo_wine ok( !timeout, "wrong timeout %d\n", timeout ); + timeout = 0xdeadbeef; size = -1; ret = SQLGetConnectAttr( con, SQL_ATTR_CONNECTION_TIMEOUT, &timeout, sizeof(timeout), &size );