Andrew Chernow wrote:
>>
>> What parts of PGconn/PGresult do you need to touch that aren't exposed
>> already?
Don't need direct access to PGconn at all.
result:
null_field
tupArrSize
client_encoding (need a PGconn for this which might be dead)
pqSetResultError
pqResultAlloc
pqResultStrdup
Also, we basically need write access to every member inside a result
object ... since we create our own for arrays and composites by copying
the standard result members over.
/* taken from dupresult inside handlers/utils.c */
PGresult *r = (PGresult *)malloc(sizeof(PGresult));
memset(r, 0, sizeof(PGresult));
/* copy some data from source result */
r->binary = args->get.result->binary;
r->resultStatus = args->get.result->resultStatus;
r->noticeHooks = args->get.result->noticeHooks;
r->client_encoding = args->get.result->client_encoding;
strcpy(r->cmdStatus, args->get.result->cmdStatus);
[snip...]
We can read args->get.result properties using PQfuncs with no problem.
But we have no way of assign these values to our result 'r'.
--
Andrew Chernow
eSilo, LLC
every bit counts
http://www.esilo.com/