AW: [Zope-DB] [ANN] Modified version of DCOracle2 is available - RE Dr. Klaus Happle fixes

Happle Dr., Klaus Martin Klaus.Happle at
Mon Dec 3 02:43:56 EST 2007


your base is DCOracle2, 1.3 beta.

But my base and fix was for DCOracle2, 1.2

The Successor (?) of DCOracle2 was reported/initiated from Maciej Wisniowski in
The base of this development was not the version 1.3 and so we can understand the differnce.

When you will use the Version DCOracle2, 1.3 beta, then you must merge the differences or the essentials of my bugfix, which I describe in:

Klaus Happle

-----Ursprüngliche Nachricht-----
Von: Maan M. Hamze [mailto:mmhamze at] 
Gesendet: Sonntag, 2. Dezember 2007 20:29
An: zope-db at
Cc: Happle Dr., Klaus Martin
Betreff: AW: [Zope-DB] [ANN] Modified version of DCOracle2 is available - RE Dr. Klaus Happle fixes

Hello -
I was checking your fixes (Dr. Klaus Happle) for the two functions in
(RE: )

static PyObject *Cursor_ResultSet(Cursor *self, int count)    and
static PyObject *Cursor_fetch(Cursor *self, PyObject *args)

I noticed that in the **original** dco2.c we have:

1.  In static PyObject *Cursor_ResultSet(Cursor *self, int count):

#ifndef ORACLE8i
		rs->fetchResultCode = OCI_SUCCESS;

2.  In static PyObject *Cursor_fetch(Cursor *self, PyObject *args):

#ifndef ORACLE8i
	if (status == OCI_SUCCESS_WITH_INFO) {
	  for (i = 0; i < PyList_Size(self->results); i++) {
	    rs = (ResultSet *) PyList_GetItem(self->results, i);

In both cases, you got rid of #ifndef ORACLE8i in your fixes of the two

I am just curious as to why these ifndef's were removed.  Can someone
please clarifiy.

Note:  in dco2.c we have:

#ifdef ORACLE9i
# ifndef ORACLE8i
#  define ORACLE8i
# endif

so with the #ifndef ORACLE8i, I imagine with the original code did not
compile the statements above with Oracle 8 or Oracle 9 detected.  I am
curious how removing the #ifndef ORACLE8i condition in the fixes to the
two functions would affect things at large.

More information about the Zope-DB mailing list