1.1 --- a/extensions/clientprefs/extension.cpp Tue Oct 14 12:31:22 2008 +1300
1.2 +++ b/extensions/clientprefs/extension.cpp Wed Oct 15 01:01:36 2008 -0700
1.3 @@ -415,7 +415,18 @@
1.4 {
1.5 query->SetDatabase(Database);
1.6 query->SetPreparedQuery();
1.7 - dbi->AddToThreadQueue(query, PrioQueue_Normal);
1.8 + if (query->GetQuery() == NULL && query->GetType() != Query_Connect)
1.9 + {
1.10 + g_pSM->LogError(myself, "Invalid aqtq query %d being inserted! glorp: %p, %p",
1.11 + query->GetType(),
1.12 + query->GetDriver(),
1.13 + query);
1.14 + query->Destroy();
1.15 + }
1.16 + else
1.17 + {
1.18 + dbi->AddToThreadQueue(query, PrioQueue_Normal);
1.19 + }
1.20 return true;
1.21 }
1.22
1.23 @@ -435,17 +446,28 @@
1.24
1.25 while (iter != cachedQueries.end())
1.26 {
1.27 - TQueryOp *op = (TQueryOp *)*iter;
1.28 + TQueryOp *op = *iter;
1.29
1.30 if (Database != NULL)
1.31 {
1.32 op->SetDatabase(Database);
1.33 op->SetPreparedQuery();
1.34 - dbi->AddToThreadQueue(op, PrioQueue_Normal);
1.35 + if (op->GetQuery() == NULL && op->GetType() != Query_Connect)
1.36 + {
1.37 + g_pSM->LogError(myself, "Invalid pqc query %d being inserted! glorp: %p, %p",
1.38 + op->GetType(),
1.39 + op->GetDriver(),
1.40 + op);
1.41 + op->Destroy();
1.42 + }
1.43 + else
1.44 + {
1.45 + dbi->AddToThreadQueue(op, PrioQueue_Normal);
1.46 + }
1.47 }
1.48 else
1.49 {
1.50 - delete op;
1.51 + op->Destroy();
1.52 }
1.53
1.54 iter++;