Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
openSUSE:12.2:ARM
unixODBC
unixODBC-2.2.12-locking_fix.patch
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File unixODBC-2.2.12-locking_fix.patch of Package unixODBC
diff -urN unixODBC-2.2.12.orig/DriverManager/SQLAllocHandle.c unixODBC-2.2.12/DriverManager/SQLAllocHandle.c --- unixODBC-2.2.12.orig/DriverManager/SQLAllocHandle.c 2010-09-03 13:22:09.000000000 -0700 +++ unixODBC-2.2.12/DriverManager/SQLAllocHandle.c 2010-09-03 13:26:23.000000000 -0700 @@ -1235,6 +1235,8 @@ if ( __validate_env( (DMHENV) input_handle )) { DMHENV environment = (DMHENV) input_handle; + + thread_protect( SQL_HANDLE_ENV, environment ); __post_internal_error( &environment -> error, ERROR_HY092, NULL, environment -> requested_version ); @@ -1244,6 +1246,8 @@ else if ( __validate_dbc( (DMHDBC) input_handle )) { DMHDBC connection = (DMHDBC) input_handle; + + thread_protect( SQL_HANDLE_DBC, connection ); __post_internal_error( &connection -> error, ERROR_HY092, NULL, connection -> environment -> requested_version ); diff -urN unixODBC-2.2.12.orig/DriverManager/SQLBrowseConnect.c unixODBC-2.2.12/DriverManager/SQLBrowseConnect.c --- unixODBC-2.2.12.orig/DriverManager/SQLBrowseConnect.c 2005-11-21 09:25:43.000000000 -0800 +++ unixODBC-2.2.12/DriverManager/SQLBrowseConnect.c 2010-09-03 13:26:23.000000000 -0700 @@ -259,7 +259,7 @@ ERROR_08002, NULL, connection -> environment -> requested_version ); - return function_return( -1, connection, SQL_ERROR ); + return function_return( IGNORE_THREAD, connection, SQL_ERROR ); } thread_protect( SQL_HANDLE_DBC, connection ); @@ -578,7 +578,7 @@ if( ret == SQL_SUCCESS_WITH_INFO ) { - function_return_ex( SQL_HANDLE_DBC, connection, ret, TRUE ); + function_return_ex( IGNORE_THREAD, connection, ret, TRUE ); } if ( !__connect_part_two( connection )) diff -urN unixODBC-2.2.12.orig/DriverManager/SQLBrowseConnectW.c unixODBC-2.2.12/DriverManager/SQLBrowseConnectW.c --- unixODBC-2.2.12.orig/DriverManager/SQLBrowseConnectW.c 2005-09-27 08:44:06.000000000 -0700 +++ unixODBC-2.2.12/DriverManager/SQLBrowseConnectW.c 2010-09-03 13:26:23.000000000 -0700 @@ -595,7 +595,7 @@ if( ret == SQL_SUCCESS_WITH_INFO ) { - function_return_ex( SQL_HANDLE_DBC, connection, ret, TRUE ); + function_return_ex( IGNORE_THREAD, connection, ret, TRUE ); } if ( !__connect_part_two( connection )) diff -urN unixODBC-2.2.12.orig/DriverManager/SQLColAttribute.c unixODBC-2.2.12/DriverManager/SQLColAttribute.c --- unixODBC-2.2.12.orig/DriverManager/SQLColAttribute.c 2006-03-08 01:18:41.000000000 -0800 +++ unixODBC-2.2.12/DriverManager/SQLColAttribute.c 2010-09-03 13:30:30.000000000 -0700 @@ -314,7 +314,7 @@ __post_internal_error( &statement -> error, ERROR_07009, NULL, statement -> connection -> environment -> requested_version ); - return function_return( statement, SQL_ERROR ); + return function_return( SQL_HANDLE_STMT, statement, SQL_ERROR ); } */ diff -urN unixODBC-2.2.12.orig/DriverManager/SQLColAttributeW.c unixODBC-2.2.12/DriverManager/SQLColAttributeW.c --- unixODBC-2.2.12.orig/DriverManager/SQLColAttributeW.c 2005-09-27 08:44:06.000000000 -0700 +++ unixODBC-2.2.12/DriverManager/SQLColAttributeW.c 2010-09-03 13:31:01.000000000 -0700 @@ -180,7 +180,7 @@ __post_internal_error( &statement -> error, ERROR_07009, NULL, statement -> connection -> environment -> requested_version ); - return function_return( statement, SQL_ERROR ); + return function_return( SQL_HANDLE_STMT, statement, SQL_ERROR ); } */ diff -urN unixODBC-2.2.12.orig/DriverManager/SQLColumns.c unixODBC-2.2.12/DriverManager/SQLColumns.c --- unixODBC-2.2.12.orig/DriverManager/SQLColumns.c 2005-09-27 08:44:06.000000000 -0700 +++ unixODBC-2.2.12/DriverManager/SQLColumns.c 2010-09-03 13:26:23.000000000 -0700 @@ -371,7 +371,7 @@ if ( ret == SQL_SUCCESS_WITH_INFO ) { - function_return_ex( SQL_HANDLE_STMT, statement, ret, TRUE ); + function_return_ex( IGNORE_THREAD, statement, ret, TRUE ); } SQLNUMRESULTCOLS( statement -> connection, diff -urN unixODBC-2.2.12.orig/DriverManager/SQLColumnsW.c unixODBC-2.2.12/DriverManager/SQLColumnsW.c --- unixODBC-2.2.12.orig/DriverManager/SQLColumnsW.c 2005-09-27 08:44:06.000000000 -0700 +++ unixODBC-2.2.12/DriverManager/SQLColumnsW.c 2010-09-03 13:26:23.000000000 -0700 @@ -284,7 +284,7 @@ if ( ret == SQL_SUCCESS_WITH_INFO ) { - function_return_ex( SQL_HANDLE_STMT, statement, ret, TRUE ); + function_return_ex( IGNORE_THREAD, statement, ret, TRUE ); } SQLNUMRESULTCOLS( statement -> connection, diff -urN unixODBC-2.2.12.orig/DriverManager/SQLDisconnect.c unixODBC-2.2.12/DriverManager/SQLDisconnect.c --- unixODBC-2.2.12.orig/DriverManager/SQLDisconnect.c 2006-02-21 03:59:22.000000000 -0800 +++ unixODBC-2.2.12/DriverManager/SQLDisconnect.c 2010-09-03 13:26:23.000000000 -0700 @@ -321,7 +321,7 @@ if ( ret == SQL_SUCCESS_WITH_INFO ) { - function_return_ex( SQL_HANDLE_DBC, connection, ret, TRUE ); + function_return_ex( IGNORE_THREAD, connection, ret, TRUE ); } /* diff -urN unixODBC-2.2.12.orig/DriverManager/SQLExecDirect.c unixODBC-2.2.12/DriverManager/SQLExecDirect.c --- unixODBC-2.2.12.orig/DriverManager/SQLExecDirect.c 2006-04-11 03:22:56.000000000 -0700 +++ unixODBC-2.2.12/DriverManager/SQLExecDirect.c 2010-09-03 13:26:23.000000000 -0700 @@ -431,7 +431,7 @@ if ( ret == SQL_SUCCESS_WITH_INFO ) { - function_return_ex( SQL_HANDLE_STMT, statement, ret, TRUE ); + function_return_ex( IGNORE_THREAD, statement, ret, TRUE ); } local_ret = SQLNUMRESULTCOLS( statement -> connection, diff -urN unixODBC-2.2.12.orig/DriverManager/SQLExecDirectW.c unixODBC-2.2.12/DriverManager/SQLExecDirectW.c --- unixODBC-2.2.12.orig/DriverManager/SQLExecDirectW.c 2006-04-11 03:22:56.000000000 -0700 +++ unixODBC-2.2.12/DriverManager/SQLExecDirectW.c 2010-09-03 13:26:23.000000000 -0700 @@ -333,7 +333,7 @@ if ( ret == SQL_SUCCESS_WITH_INFO ) { - function_return_ex( SQL_HANDLE_STMT, statement, ret, TRUE ); + function_return_ex( IGNORE_THREAD, statement, ret, TRUE ); } local_ret = SQLNUMRESULTCOLS( statement -> connection, diff -urN unixODBC-2.2.12.orig/DriverManager/SQLExecute.c unixODBC-2.2.12/DriverManager/SQLExecute.c --- unixODBC-2.2.12.orig/DriverManager/SQLExecute.c 2005-09-27 08:44:06.000000000 -0700 +++ unixODBC-2.2.12/DriverManager/SQLExecute.c 2010-09-03 13:26:23.000000000 -0700 @@ -294,7 +294,7 @@ if ( ret == SQL_SUCCESS_WITH_INFO ) { - function_return_ex( SQL_HANDLE_STMT, statement, ret, TRUE ); + function_return_ex( IGNORE_THREAD, statement, ret, TRUE ); } local_ret = SQLNUMRESULTCOLS( statement -> connection, diff -urN unixODBC-2.2.12.orig/DriverManager/SQLForeignKeys.c unixODBC-2.2.12/DriverManager/SQLForeignKeys.c --- unixODBC-2.2.12.orig/DriverManager/SQLForeignKeys.c 2005-09-27 08:44:06.000000000 -0700 +++ unixODBC-2.2.12/DriverManager/SQLForeignKeys.c 2010-09-03 13:26:23.000000000 -0700 @@ -407,7 +407,7 @@ if ( ret == SQL_SUCCESS_WITH_INFO ) { - function_return_ex( SQL_HANDLE_STMT, statement, ret, TRUE ); + function_return_ex( IGNORE_THREAD, statement, ret, TRUE ); } SQLNUMRESULTCOLS( statement -> connection, diff -urN unixODBC-2.2.12.orig/DriverManager/SQLForeignKeysW.c unixODBC-2.2.12/DriverManager/SQLForeignKeysW.c --- unixODBC-2.2.12.orig/DriverManager/SQLForeignKeysW.c 2005-09-27 08:44:06.000000000 -0700 +++ unixODBC-2.2.12/DriverManager/SQLForeignKeysW.c 2010-09-03 13:26:23.000000000 -0700 @@ -315,7 +315,7 @@ if ( ret == SQL_SUCCESS_WITH_INFO ) { - function_return_ex( SQL_HANDLE_STMT, statement, ret, TRUE ); + function_return_ex( IGNORE_THREAD, statement, ret, TRUE ); } SQLNUMRESULTCOLS( statement -> connection, diff -urN unixODBC-2.2.12.orig/DriverManager/SQLFreeHandle.c unixODBC-2.2.12/DriverManager/SQLFreeHandle.c --- unixODBC-2.2.12.orig/DriverManager/SQLFreeHandle.c 2006-04-21 07:25:55.000000000 -0700 +++ unixODBC-2.2.12/DriverManager/SQLFreeHandle.c 2010-09-03 13:27:41.000000000 -0700 @@ -226,8 +226,6 @@ ERROR_HY010, NULL, environment -> requested_version ); - thread_release( SQL_HANDLE_ENV, environment ); - return function_return( SQL_HANDLE_ENV, environment, SQL_ERROR ); } @@ -293,8 +291,6 @@ ERROR_HY010, NULL, connection -> environment -> requested_version ); - thread_release( SQL_HANDLE_ENV, environment ); - return function_return( SQL_HANDLE_ENV, environment, SQL_ERROR ); } @@ -396,8 +392,6 @@ ERROR_HY010, NULL, statement -> connection -> environment -> requested_version ); - thread_release( SQL_HANDLE_STMT, statement ); - return function_return( SQL_HANDLE_STMT, statement, SQL_ERROR ); } @@ -525,8 +519,6 @@ ERROR_IM001, NULL, connection -> environment -> requested_version ); - thread_release( SQL_HANDLE_DESC, descriptor ); - return function_return( SQL_HANDLE_DESC, descriptor, SQL_ERROR ); } else diff -urN unixODBC-2.2.12.orig/DriverManager/SQLMoreResults.c unixODBC-2.2.12/DriverManager/SQLMoreResults.c --- unixODBC-2.2.12.orig/DriverManager/SQLMoreResults.c 2006-03-08 01:18:41.000000000 -0800 +++ unixODBC-2.2.12/DriverManager/SQLMoreResults.c 2010-09-03 13:26:23.000000000 -0700 @@ -249,7 +249,7 @@ if ( ret == SQL_SUCCESS_WITH_INFO ) { - function_return_ex( SQL_HANDLE_STMT, statement, ret, TRUE ); + function_return_ex( IGNORE_THREAD, statement, ret, TRUE ); } SQLNUMRESULTCOLS( statement -> connection, diff -urN unixODBC-2.2.12.orig/DriverManager/SQLParamData.c unixODBC-2.2.12/DriverManager/SQLParamData.c --- unixODBC-2.2.12.orig/DriverManager/SQLParamData.c 2005-11-21 09:25:43.000000000 -0800 +++ unixODBC-2.2.12/DriverManager/SQLParamData.c 2010-09-03 13:26:23.000000000 -0700 @@ -261,7 +261,7 @@ if ( ret == SQL_SUCCESS_WITH_INFO ) { - function_return_ex( SQL_HANDLE_STMT, statement, ret, TRUE ); + function_return_ex( IGNORE_THREAD, statement, ret, TRUE ); } local_ret = SQLNUMRESULTCOLS( statement -> connection, diff -urN unixODBC-2.2.12.orig/DriverManager/SQLPrimaryKeys.c unixODBC-2.2.12/DriverManager/SQLPrimaryKeys.c --- unixODBC-2.2.12.orig/DriverManager/SQLPrimaryKeys.c 2005-09-27 08:44:06.000000000 -0700 +++ unixODBC-2.2.12/DriverManager/SQLPrimaryKeys.c 2010-09-03 13:26:23.000000000 -0700 @@ -364,7 +364,7 @@ if ( ret == SQL_SUCCESS_WITH_INFO ) { - function_return_ex( SQL_HANDLE_STMT, statement, ret, TRUE ); + function_return_ex( IGNORE_THREAD, statement, ret, TRUE ); } SQLNUMRESULTCOLS( statement -> connection, diff -urN unixODBC-2.2.12.orig/DriverManager/SQLPrimaryKeysW.c unixODBC-2.2.12/DriverManager/SQLPrimaryKeysW.c --- unixODBC-2.2.12.orig/DriverManager/SQLPrimaryKeysW.c 2005-09-27 08:44:06.000000000 -0700 +++ unixODBC-2.2.12/DriverManager/SQLPrimaryKeysW.c 2010-09-03 13:26:23.000000000 -0700 @@ -287,7 +287,7 @@ if ( ret == SQL_SUCCESS_WITH_INFO ) { - function_return_ex( SQL_HANDLE_STMT, statement, ret, TRUE ); + function_return_ex( IGNORE_THREAD, statement, ret, TRUE ); } SQLNUMRESULTCOLS( statement -> connection, diff -urN unixODBC-2.2.12.orig/DriverManager/SQLTransact.c unixODBC-2.2.12/DriverManager/SQLTransact.c --- unixODBC-2.2.12.orig/DriverManager/SQLTransact.c 2006-05-31 10:35:34.000000000 -0700 +++ unixODBC-2.2.12/DriverManager/SQLTransact.c 2010-09-03 13:26:23.000000000 -0700 @@ -434,8 +434,6 @@ ERROR_HY012, NULL, environment -> requested_version ); - thread_release( SQL_HANDLE_ENV, environment ); - return function_return( SQL_HANDLE_ENV, environment, SQL_ERROR ); }
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor