X-Git-Url: https://git.netwichtig.de/gitweb/?a=blobdiff_plain;ds=sidebyside;f=src%2Fmodules%2Fextra%2Fm_pgsql.cpp;h=b0f0b4597eba45367a256e7d7801158ebd0eb3cf;hb=db45e2e69c1a68bf93e2c70d2a301d4ff09bc4b6;hp=220168b84d719234c32aedf2d6ba805afb4f0f6a;hpb=97a1d6429a735eb279496df010d04e3f42aa4e22;p=user%2Fhenk%2Fcode%2Finspircd.git diff --git a/src/modules/extra/m_pgsql.cpp b/src/modules/extra/m_pgsql.cpp index 220168b84..b0f0b4597 100644 --- a/src/modules/extra/m_pgsql.cpp +++ b/src/modules/extra/m_pgsql.cpp @@ -24,6 +24,7 @@ /// $CompilerFlags: -Iexecute("pg_config --includedir" "POSTGRESQL_INCLUDE_DIR") /// $LinkerFlags: -Lexecute("pg_config --libdir" "POSTGRESQL_LIBRARY_DIR") -lpq +/// $PackageInfo: require_system("arch") postgresql-libs /// $PackageInfo: require_system("centos") postgresql-devel /// $PackageInfo: require_system("darwin") postgresql /// $PackageInfo: require_system("debian") libpq-dev @@ -102,7 +103,7 @@ class PgSQLresult : public SQL::Result { rows = PQntuples(res); if (!rows) - rows = atoi(PQcmdTuples(res)); + rows = ConvToNum(PQcmdTuples(res)); } ~PgSQLresult() @@ -122,7 +123,7 @@ class PgSQLresult : public SQL::Result result = colnames; } - bool HasColumn(const std::string& column, size_t& index) + bool HasColumn(const std::string& column, size_t& index) CXX11_OVERRIDE { if (colnames.empty()) getColNames(); @@ -175,7 +176,11 @@ class SQLConn : public SQL::Provider, public EventHandler QueueItem qinprog; /* If there is currently a query in progress */ SQLConn(Module* Creator, ConfigTag* tag) - : SQL::Provider(Creator, "SQL/" + tag->getString("id")), conf(tag), sql(NULL), status(CWRITE), qinprog(NULL, "") + : SQL::Provider(Creator, tag->getString("id")) + , conf(tag) + , sql(NULL) + , status(CWRITE) + , qinprog(NULL, "") { if (!DoConnect()) { @@ -298,6 +303,7 @@ class SQLConn : public SQL::Provider, public EventHandler SocketEngine::ChangeEventMask(this, FD_WANT_POLL_READ | FD_WANT_NO_WRITE); status = WWRITE; DoConnectedPoll(); + return true; default: return true; } @@ -391,6 +397,7 @@ restart: SocketEngine::ChangeEventMask(this, FD_WANT_POLL_READ | FD_WANT_NO_WRITE); status = WWRITE; DoConnectedPoll(); + return true; default: return true; } @@ -416,6 +423,7 @@ restart: void Submit(SQL::Query *req, const std::string& q) CXX11_OVERRIDE { + ServerInstance->Logs->Log(MODNAME, LOG_DEBUG, "Executing PostgreSQL query: " + q); if (qinprog.q.empty()) { DoQuery(QueueItem(req,q)); @@ -546,7 +554,7 @@ class ModulePgSQL : public Module ConfigTagList tags = ServerInstance->Config->ConfTags("database"); for(ConfigIter i = tags.first; i != tags.second; i++) { - if (!stdalgo::string::equalsci(i->second->getString("provider"), "pgsql")) + if (!stdalgo::string::equalsci(i->second->getString("module"), "pgsql")) continue; std::string id = i->second->getString("id"); ConnMap::iterator curr = connections.find(id);