pg.ddx.io  pgsql-interfaces@postgresql.org mailing list archive  
help / color / mirror / Atom feed
From: J. T. Vermeulen <jtv@cistron-office.nl>
To: pgsql-interfaces@postgresql.org
Subject: Patches for libpq++
Date: Wed, 21 Feb 2001 18:55:01 +0100
Message-ID: <20010221185501.D16178@cistron.nl> (raw)

I'd like to suggest the following changes to bring libpq++ a bit more up to
date:

 - fixes include path in Makefile
 - makes some member functions const
 - flags (but does not fix) what looks like a memory leak and a warning
 - changes int return type on ConnectionBad() to bool


inline patch 1: postgresql-7.0.3-jtv/src/interfaces/libpq++/examples/Makefile, postgresql-7.0.3-jtv/src/interfaces/libpq++/pgconnection.cc, postgresql-7.0.3-jtv/src/interfaces/libpq++/pgconnection.h and 4 more (+22/-19 lines) download inline-1.patchdiff -u -r postgresql-7.0.3/src/interfaces/libpq++/examples/Makefile postgresql-7.0.3-jtv/src/interfaces/libpq++/examples/Makefile --- postgresql-7.0.3/src/interfaces/libpq++/examples/Makefile Thu Mar 2 03:00:59 2000 +++ postgresql-7.0.3-jtv/src/interfaces/libpq++/examples/Makefile Wed Feb 21 16:16:14 2001 @@ -4,7 +4,8 @@ LIBNAME= libpq++ -HEADERDIR= /usr/local/pgsql/include +#HEADERDIR= /usr/local/pgsql/include +HEADERDIR=/usr/include/postgresql LIBPQDIR= /usr/local/pgsql/lib diff -u -r postgresql-7.0.3/src/interfaces/libpq++/pgconnection.cc postgresql-7.0.3-jtv/src/interfaces/libpq++/pgconnection.cc --- postgresql-7.0.3/src/interfaces/libpq++/pgconnection.cc Sun Apr 23 00:39:15 2000 +++ postgresql-7.0.3-jtv/src/interfaces/libpq++/pgconnection.cc Wed Feb 21 17:16:51 2001 @@ -67,7 +67,7 @@ } // PgConnection::status -- return connection or result status -ConnStatusType PgConnection::Status() +ConnStatusType PgConnection::Status() const { return PQstatus(pgConn); } @@ -123,19 +123,19 @@ -int PgConnection::ConnectionBad() +bool PgConnection::ConnectionBad() const { return Status() == CONNECTION_BAD; } -const char* PgConnection::ErrorMessage() +const char* PgConnection::ErrorMessage() const { return (const char *)PQerrorMessage(pgConn); } -const char* PgConnection::DBName() +const char* PgConnection::DBName() const { return (const char *)PQdb(pgConn); } diff -u -r postgresql-7.0.3/src/interfaces/libpq++/pgconnection.h postgresql-7.0.3-jtv/src/interfaces/libpq++/pgconnection.h --- postgresql-7.0.3/src/interfaces/libpq++/pgconnection.h Sun Apr 23 00:39:15 2000 +++ postgresql-7.0.3-jtv/src/interfaces/libpq++/pgconnection.h Wed Feb 21 17:17:13 2001 @@ -66,12 +66,12 @@ virtual ~PgConnection(); // close connection and clean up // Connection status and error messages - ConnStatusType Status(); - int ConnectionBad(); - const char* ErrorMessage(); + ConnStatusType Status() const; + bool ConnectionBad() const; + const char* ErrorMessage() const; // returns the database name of the connection - const char* DBName(); + const char* DBName() const; // Query Execution interface ExecStatusType Exec(const char* query); // send a query to the backend diff -u -r postgresql-7.0.3/src/interfaces/libpq++/pgdatabase.cc postgresql-7.0.3-jtv/src/interfaces/libpq++/pgdatabase.cc --- postgresql-7.0.3/src/interfaces/libpq++/pgdatabase.cc Sat Jan 29 17:58:52 2000 +++ postgresql-7.0.3-jtv/src/interfaces/libpq++/pgdatabase.cc Wed Feb 21 17:41:51 2001 @@ -45,6 +45,8 @@ po.align = width; + // TODO: Looks like memory leak + // TODO: Looks like PQprintOpt::fieldSep should be const char * if(terseOutput) po.fieldSep = strdup("|"); else po.fieldSep = ""; @@ -150,15 +152,15 @@ } -int PgDatabase::GetLine(char* string, int length) +int PgDatabase::GetLine(char str[], int length) { -return PQgetline(pgConn, string, length); +return PQgetline(pgConn, str, length); } -void PgDatabase::PutLine(const char* string) +void PgDatabase::PutLine(const char str[]) { -PQputline(pgConn, string); +PQputline(pgConn, str); } diff -u -r postgresql-7.0.3/src/interfaces/libpq++/pgdatabase.h postgresql-7.0.3-jtv/src/interfaces/libpq++/pgdatabase.h --- postgresql-7.0.3/src/interfaces/libpq++/pgdatabase.h Sun Apr 23 00:39:15 2000 +++ postgresql-7.0.3-jtv/src/interfaces/libpq++/pgdatabase.h Wed Feb 21 17:37:36 2001 @@ -63,8 +63,8 @@ int terseOutput = 0, int width = 0) ; // copy command related access - int GetLine(char* string, int length); - void PutLine(const char* string); + int GetLine(char str[], int length); + void PutLine(const char str[]); const char* OidStatus(); int EndCopy(); diff -u -r postgresql-7.0.3/src/interfaces/libpq++/pglobject.cc postgresql-7.0.3-jtv/src/interfaces/libpq++/pglobject.cc --- postgresql-7.0.3/src/interfaces/libpq++/pglobject.cc Sun Apr 23 00:39:15 2000 +++ postgresql-7.0.3-jtv/src/interfaces/libpq++/pglobject.cc Wed Feb 21 17:19:56 2001 @@ -142,7 +142,7 @@ } -int PgLargeObject::Tell() +int PgLargeObject::Tell() const { return lo_tell(pgConn, pgFd); } @@ -160,7 +160,7 @@ } -string PgLargeObject::Status() +string PgLargeObject::Status() const { return loStatus; } diff -u -r postgresql-7.0.3/src/interfaces/libpq++/pglobject.h postgresql-7.0.3-jtv/src/interfaces/libpq++/pglobject.h --- postgresql-7.0.3/src/interfaces/libpq++/pglobject.h Sun Apr 23 00:39:15 2000 +++ postgresql-7.0.3-jtv/src/interfaces/libpq++/pglobject.h Wed Feb 21 17:19:50 2001 @@ -47,12 +47,12 @@ int Read(char* buf, int len); int Write(const char* buf, int len); int LSeek(int offset, int whence); - int Tell(); + int Tell() const; int Unlink(); Oid LOid(); Oid Import(const char* filename); int Export(const char* filename); - string Status(); + string Status() const; private: // We don't support copying of PgLargeObject objects,

view thread (5+ messages)  latest in thread

Message-ID: <20010221185501.D16178@cistron.nl>
Permalink:  ../20010221185501.D16178@cistron.nl/
Also on:    postgresql.org/message-id/20010221185501.D16178@cistron.nl

 ·  · 

reply

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Reply to all the recipients using the --to and --cc options:
  reply via email

  To: pgsql-interfaces@postgresql.org
  Cc: jtv@cistron-office.nl
  Subject: Re: Patches for libpq++
  In-Reply-To: <20010221185501.D16178@cistron.nl>

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox