rendered paste bodyIndex: src/shared/Database/SqlOperations.cpp
===================================================================
--- src/shared/Database/SqlOperations.cpp (revision 4093)
+++ src/shared/Database/SqlOperations.cpp (working copy)
@@ -21,7 +21,7 @@
void SqlStatement::Execute(Database *db)
{
- db->DirectExecute(m_sql);
+ db->DirectExecute(m_sql.c_str());
}
void SqlTransaction::Execute(Database *db)
@@ -30,10 +30,9 @@
db->DirectExecute("START TRANSACTION");
while(!m_queue.empty())
{
- char *sql = (char*)m_queue.front();
+ std::string sql = m_queue.front();
m_queue.pop();
- db->DirectExecute(sql);
- free(sql);
+ db->DirectExecute(sql.c_str());
}
db->DirectExecute("COMMIT");
}
Index: src/shared/Database/SqlOperations.h
===================================================================
--- src/shared/Database/SqlOperations.h (revision 4093)
+++ src/shared/Database/SqlOperations.h (working copy)
@@ -22,7 +22,6 @@
#include "zthread/LockedQueue.h"
#include "zthread/FastMutex.h"
#include <queue>
-using namespace std;
/// ---- BASE ---
@@ -31,6 +30,7 @@
class SqlOperation
{
public:
+ virtual ~SqlOperation() {}
virtual void Execute(Database *db) = 0;
};
@@ -39,20 +39,20 @@
class SqlStatement : public SqlOperation
{
private:
- const char *m_sql;
+ std::string m_sql;
public:
- SqlStatement(const char *sql) : m_sql(strdup(sql)){}
- ~SqlStatement() { free((void*)m_sql); }
+ SqlStatement(const char *sql) : m_sql(sql) {}
+ ~SqlStatement() {}
void Execute(Database *db);
};
class SqlTransaction : public SqlOperation
{
private:
- queue<const char *> m_queue;
+ std::queue<std::string> m_queue;
public:
SqlTransaction() {}
- void DelayExecute(const char *sql) { m_queue.push(strdup(sql)); }
+ void DelayExecute(const char *sql) { m_queue.push(std::string(sql)); }
void Execute(Database *db);
};
#endif //__SQLOPERATIONS_H