rendered paste bodyIndex: src/shared/Database/DatabasePostgre.cpp
===================================================================
--- src/shared/Database/DatabasePostgre.cpp (revision 5277)
+++ src/shared/Database/DatabasePostgre.cpp (working copy)
@@ -111,8 +111,13 @@
#endif
// Send the query
PGresult * result = PQexec(mPGconn, sql);
+ if (!result )
+ {
+ PQclear(result);
+ return NULL;
+ }
- if (PQresultStatus(result) != PGRES_COMMAND_OK)
+ if (PQresultStatus(result) != PGRES_TUPLES_OK)
{
sLog.outErrorDb( "SQL: %s", sql );
sLog.outErrorDb("query ERROR: %s", PQerrorMessage(mPGconn));
@@ -130,20 +135,13 @@
fieldCount = PQnfields(result);
// end guarded block
- if (!result )
- {
- PQclear(result);
- return NULL;
- }
-
if (!rowCount)
{
PQclear(result);
return NULL;
}
- QueryResultPostgre * queryResult = new QueryResultPostgre(result, fieldCount, rowCount);
- return queryResult;
+ QueryResultPostgre * queryResult = new QueryResultPostgre(result, rowCount, fieldCount);
queryResult->NextRow();
Index: src/shared/Database/DatabasePostgre.h
===================================================================
--- src/shared/Database/DatabasePostgre.h (revision 5277)
+++ src/shared/Database/DatabasePostgre.h (working copy)
@@ -26,7 +26,7 @@
#ifdef WIN32
#define FD_SETSIZE 1024
#include <winsock2.h>
-#include <postgre/libpq/libpq-fe.h>
+#include <postgre/libpq-fe.h>
#else
#include <libpq-fe.h>
#endif
Index: src/shared/Database/QueryResultPostgre.cpp
===================================================================
--- src/shared/Database/QueryResultPostgre.cpp (revision 5277)
+++ src/shared/Database/QueryResultPostgre.cpp (working copy)
@@ -21,7 +21,7 @@
#include "DatabaseEnv.h"
QueryResultPostgre::QueryResultPostgre(PGresult *result, uint64 rowCount, uint32 fieldCount) :
-QueryResult(rowCount, fieldCount), mResult(result)
+QueryResult(rowCount, fieldCount), mResult(result), mTableIndex(0)
{
mCurrentRow = new Field[mFieldCount];
@@ -50,12 +50,12 @@
EndQuery();
return false;
}
-
for (int j = 0; j < mFieldCount; j++)
{
mCurrentRow[j].SetValue(PQgetvalue(mResult, mTableIndex, j));
+ printf ("j= %d , value = %s\n",j,mCurrentRow[j].GetString());
}
-
+ ++mTableIndex;
return true;
}
Index: src/shared/Database/QueryResultPostgre.h
===================================================================
--- src/shared/Database/QueryResultPostgre.h (revision 5277)
+++ src/shared/Database/QueryResultPostgre.h (working copy)
@@ -22,7 +22,7 @@
#ifdef WIN32
#define FD_SETSIZE 1024
#include <winsock2.h>
-#include <postgre/libpq/libpq-fe.h>
+#include <postgre/libpq-fe.h>
#else
#include <libpq-fe.h>
#endif
Index: win/VC80/game.vcproj
===================================================================
--- win/VC80/game.vcproj (revision 5277)
+++ win/VC80/game.vcproj (working copy)
@@ -44,7 +44,7 @@
AdditionalOptions="/MP"
Optimization="0"
AdditionalIncludeDirectories="..\..\dep\include;..\..\src\framework;..\..\src\shared;..\..\src\shared\vmap"
- PreprocessorDefinitions="WIN32;_DEBUG;MANGOS_DEBUG;_LIB;"
+ PreprocessorDefinitions="WIN32;_DEBUG;MANGOS_DEBUG;_LIB;DO_POSTGRESQL"
StringPooling="false"
MinimalRebuild="false"
BasicRuntimeChecks="3"
@@ -124,7 +124,7 @@
AdditionalOptions="/MP"
InlineFunctionExpansion="1"
AdditionalIncludeDirectories="..\..\dep\include;..\..\src\framework;..\..\src\shared;..\..\src\shared\vmap"
- PreprocessorDefinitions="WIN32;NDEBUG;_LIB;"
+ PreprocessorDefinitions="WIN32;NDEBUG;_LIB;DO_POSTGRESQL"
StringPooling="true"
RuntimeLibrary="0"
EnableFunctionLevelLinking="true"
Index: win/VC80/mangosd.vcproj
===================================================================
--- win/VC80/mangosd.vcproj (revision 5277)
+++ win/VC80/mangosd.vcproj (working copy)
@@ -45,7 +45,7 @@
AdditionalOptions="/MP"
InlineFunctionExpansion="1"
AdditionalIncludeDirectories="..\..\dep\include,..\..\src\framework,..\..\src\shared,..\..\src\game,..\..\src\mangosd"
- PreprocessorDefinitions="VERSION="0.10.0-SVN";WIN32;NDEBUG;_CONSOLE;ENABLE_CLI"
+ PreprocessorDefinitions="VERSION="0.10.0-SVN";WIN32;NDEBUG;_CONSOLE;ENABLE_CLI;DO_POSTGRESQL"
StringPooling="true"
RuntimeLibrary="0"
EnableFunctionLevelLinking="true"
@@ -145,7 +145,7 @@
AdditionalOptions="/MP"
Optimization="0"
AdditionalIncludeDirectories="..\..\dep\include,..\..\src\framework,..\..\src\shared,..\..\src\game,..\..\src\mangosd"
- PreprocessorDefinitions="VERSION="0.10.0-SVN";WIN32;_DEBUG;MANGOS_DEBUG;_CONSOLE;ENABLE_CLI"
+ PreprocessorDefinitions="VERSION="0.10.0-SVN";WIN32;_DEBUG;MANGOS_DEBUG;_CONSOLE;ENABLE_CLI;DO_POSTGRESQL"
IgnoreStandardIncludePath="false"
BasicRuntimeChecks="3"
RuntimeLibrary="1"
Index: win/VC80/realmd.vcproj
===================================================================
--- win/VC80/realmd.vcproj (revision 5277)
+++ win/VC80/realmd.vcproj (working copy)
@@ -45,7 +45,7 @@
AdditionalOptions="/MP"
InlineFunctionExpansion="1"
AdditionalIncludeDirectories="..\..\dep\include;..\..\src\framework;..\..\src\shared;..\..\src\realmd"
- PreprocessorDefinitions="VERSION="0.2-SVN",WIN32,NDEBUG,_CONSOLE"
+ PreprocessorDefinitions="DO_POSTGRESQL"
StringPooling="true"
RuntimeLibrary="0"
EnableFunctionLevelLinking="true"
@@ -75,7 +75,7 @@
<Tool
Name="VCLinkerTool"
AdditionalOptions="/MACHINE:I386"
- AdditionalDependencies="zthread.lib libmySQL.lib libeay32.lib ws2_32.lib winmm.lib odbc32.lib odbccp32.lib advapi32.lib dbghelp.lib"
+ AdditionalDependencies="zthread.lib libmySQL.lib libeay32.lib ws2_32.lib winmm.lib odbc32.lib odbccp32.lib advapi32.lib dbghelp.lib libpq.lib"
OutputFile="..\..\bin\release\realmd.exe"
LinkIncremental="1"
SuppressStartupBanner="true"
@@ -142,7 +142,7 @@
AdditionalOptions="/MP"
Optimization="0"
AdditionalIncludeDirectories="..\..\dep\include;..\..\src\framework;..\..\src\shared;..\..\src\realmd"
- PreprocessorDefinitions="VERSION="0.2-SVN";WIN32;_DEBUG;MANGOS_DEBUG;_CONSOLE"
+ PreprocessorDefinitions="VERSION=&quot;0.2-SVN&quot;,WIN32,NDEBUG,_CONSOLE;DO_POSTGRESQL;"
IgnoreStandardIncludePath="false"
BasicRuntimeChecks="3"
RuntimeLibrary="1"
@@ -162,7 +162,7 @@
/>
<Tool
Name="VCResourceCompilerTool"
- PreprocessorDefinitions="_DEBUG"
+ PreprocessorDefinitions="_DEBUG;DO_POSTGRESQL"
Culture="1033"
/>
<Tool
@@ -171,7 +171,7 @@
<Tool
Name="VCLinkerTool"
AdditionalOptions="/MACHINE:I386"
- AdditionalDependencies="zthread.lib libmySQL.lib libeay32.lib ws2_32.lib winmm.lib odbc32.lib odbccp32.lib advapi32.lib dbghelp.lib"
+ AdditionalDependencies="zthread.lib libmySQL.lib libeay32.lib ws2_32.lib winmm.lib odbc32.lib odbccp32.lib advapi32.lib dbghelp.lib libpq.lib"
OutputFile="..\..\bin\debug\realmd.exe"
LinkIncremental="2"
SuppressStartupBanner="true"
Index: win/VC80/shared.vcproj
===================================================================
--- win/VC80/shared.vcproj (revision 5277)
+++ win/VC80/shared.vcproj (working copy)
@@ -44,7 +44,7 @@
AdditionalOptions="/MP"
InlineFunctionExpansion="1"
AdditionalIncludeDirectories="..\..\dep\include;..\..\dep\include\g3dlite;..\..\src\framework;..\..\src\shared"
- PreprocessorDefinitions="WIN32;NDEBUG;_LIB;_CRT_SECURE_NO_DEPRECATE"
+ PreprocessorDefinitions="WIN32;NDEBUG;_LIB;_CRT_SECURE_NO_DEPRECATE;DO_POSTGRESQL"
StringPooling="true"
RuntimeLibrary="0"
EnableFunctionLevelLinking="true"
@@ -66,7 +66,7 @@
/>
<Tool
Name="VCResourceCompilerTool"
- PreprocessorDefinitions="NDEBUG"
+ PreprocessorDefinitions="NDEBUG;DO_POSTGRESQL"
Culture="1033"
/>
<Tool
@@ -124,7 +124,7 @@
AdditionalOptions="/MP"
Optimization="0"
AdditionalIncludeDirectories="..\..\dep\include;..\..\dep\include\g3dlite;..\..\src\framework;..\..\src\shared"
- PreprocessorDefinitions="WIN32;_DEBUG;MANGOS_DEBUG;_LIB;_CRT_SECURE_NO_DEPRECATE"
+ PreprocessorDefinitions="WIN32;_DEBUG;MANGOS_DEBUG;_LIB;_CRT_SECURE_NO_DEPRECATE;DO_POSTGRESQL"
BasicRuntimeChecks="3"
RuntimeLibrary="1"
RuntimeTypeInfo="true"
@@ -204,6 +204,14 @@
>
</File>
<File
+ RelativePath="..\..\src\shared\Database\DatabasePostgre.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\src\shared\Database\DatabasePostgre.h"
+ >
+ </File>
+ <File
RelativePath="..\..\src\shared\Database\DatabaseSqlite.cpp"
>
</File>
@@ -236,6 +244,14 @@
>
</File>
<File
+ RelativePath="..\..\src\shared\Database\QueryResultPostgre.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\src\shared\Database\QueryResultPostgre.h"
+ >
+ </File>
+ <File
RelativePath="..\..\src\shared\Database\QueryResultSqlite.cpp"
>
</File>