Core/DBLayer: Possible crash fix for ProcessQueryCallbacks on GCC builds. Ref issue #2136 #1422 #1335.

There's no need for an explicit ACE_Thread_Mutex in the ACE_Refcounted_Auto_Ptr objects since concurrent read/write access is guarded by ACE_Future's implicit ACE_Recursive_Thread_Mutex. Perhaps the double locking was the reason the reference count's atomic incrementing crashing.
Please try to test and confirm.
This commit is contained in:
Machiavelli
2011-08-18 12:41:46 +02:00
parent e21b306113
commit fdbfa5156c

View File

@@ -58,7 +58,7 @@ class ResultSet
MYSQL_FIELD *m_fields;
};
typedef ACE_Refcounted_Auto_Ptr<ResultSet, ACE_Thread_Mutex> QueryResult;
typedef ACE_Refcounted_Auto_Ptr<ResultSet, ACE_Null_Mutex> QueryResult;
class PreparedResultSet
{
@@ -103,7 +103,7 @@ class PreparedResultSet
};
typedef ACE_Refcounted_Auto_Ptr<PreparedResultSet, ACE_Thread_Mutex> PreparedQueryResult;
typedef ACE_Refcounted_Auto_Ptr<PreparedResultSet, ACE_Null_Mutex> PreparedQueryResult;
#endif