From fdbfa5156c0f4d0b9c8485ad067ddf38e6320192 Mon Sep 17 00:00:00 2001 From: Machiavelli Date: Thu, 18 Aug 2011 12:41:46 +0200 Subject: 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. --- src/server/shared/Database/QueryResult.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'src/server/shared/Database/QueryResult.h') diff --git a/src/server/shared/Database/QueryResult.h b/src/server/shared/Database/QueryResult.h index 53290a5735b..399779fb66f 100755 --- a/src/server/shared/Database/QueryResult.h +++ b/src/server/shared/Database/QueryResult.h @@ -58,7 +58,7 @@ class ResultSet MYSQL_FIELD *m_fields; }; -typedef ACE_Refcounted_Auto_Ptr QueryResult; +typedef ACE_Refcounted_Auto_Ptr QueryResult; class PreparedResultSet { @@ -103,7 +103,7 @@ class PreparedResultSet }; -typedef ACE_Refcounted_Auto_Ptr PreparedQueryResult; +typedef ACE_Refcounted_Auto_Ptr PreparedQueryResult; #endif -- cgit v1.2.3