aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMachiavelli <none@none>2010-05-13 14:22:00 +0200
committerMachiavelli <none@none>2010-05-13 14:22:00 +0200
commit5e48be89d5cb3eb15e41fb0120e5ee979de73271 (patch)
tree3b0f5295b6f487327b112c962b63d5549c1aadf7
parent10bf921a65a6f040b6a404609752852e03760a95 (diff)
Fix a crash in SqlAsyncTask::call caused by the fact that the SQLOperation to be called was a NULL pointer.
The crash was mostly noticable on servers with relatively high MapUpdate Threads, since the window between SqlAsyncTask::call()´s NULLpointer check for m_op and the usage of this pointer was larger when more map threads are calling Database::CommitTransaction()´s and NULLing this pointer. Fixes crash specified in comment #24 in issue #1259, and most likely will affect other crashes specified there as well. Courtesy of click and myself, and our lengthy and deep brainstorming session. --HG-- branch : trunk
-rw-r--r--src/shared/Database/Database.cpp1
1 files changed, 0 insertions, 1 deletions
diff --git a/src/shared/Database/Database.cpp b/src/shared/Database/Database.cpp
index bc4e863132e..d03f8704896 100644
--- a/src/shared/Database/Database.cpp
+++ b/src/shared/Database/Database.cpp
@@ -591,7 +591,6 @@ bool Database::CommitTransaction()
if (i != m_tranQueues.end() && i->second != NULL)
{
m_threadBody->Delay(i->second);
- i->second = NULL;
return true;
}
else