Patch for DBD-Pg-0.69.. - Mailing list pgsql-hackers

From Michael J Schout
Subject Patch for DBD-Pg-0.69..
Date
Msg-id 353562D9.9666387E@gkg.net
Whole thread Raw
List pgsql-hackers
Hi everyone.

I have made a patch to DBD-Pg-0.69 so that queries that contain the
casing operator "::" work with DBD::Pg v0.69.  Without this patch, any
query with teh casting operator in it will not run.  I could not wait
for a fix from the author for this, so I made the change myself.
Anyways, in case anyone else is strugling with this, the following patch
made against DBD-Pg-0.69 seems to do the trick for me.

Thought I would post this up in case anyone else would like to try it.

Mike
diff -uNr DBD-Pg-0.69.orig/dbdimp.c DBD-Pg-0.69/dbdimp.c
--- DBD-Pg-0.69.orig/dbdimp.c   Fri Mar  6 15:58:50 1998
+++ DBD-Pg-0.69/dbdimp.c        Wed Apr 15 20:37:15 1998
@@ -447,6 +447,19 @@
            *dest++ = *src++;
            continue;
        }
+
+       /*
+        * The above loop will not copy "::" for casting. This
+        * works around that by copying a colon if it followed by or
+        * is preceded by another colon.
+        * Michael schout, 4/15/1998 (mschout@gkg.net)
+        */
+       if (*src == ':' && (*(src-1) == ':' || *(src+1) == ':'))
+       {
+          *dest++ = *src++;
+          continue;
+       }
+
        start = dest;                   /* save name inc colon  */
        *dest++ = *src++;
        if (*start == '?') {            /* X/Open standard      */

pgsql-hackers by date:

Previous
From: Tom Lane
Date:
Subject: Re: [HACKERS] Anyone working on asynchronous NOTIFY reception?
Next
From: Bruce Momjian
Date:
Subject: HAVING clause and 6.3.2 release