Re: wierd problems with DBI/DBD::pg? - Mailing list pgsql-general

From pmh@edison.ioppublishing.com
Subject Re: wierd problems with DBI/DBD::pg?
Date
Msg-id PGM.20010501111802.23899.359@edison.ioppublishing.com
Whole thread Raw
In response to wierd problems with DBI/DBD::pg?  (Michelle Murrain <mpm@norwottuck.com>)
List pgsql-general
On Mon, 30 Apr 2001 14:50:15 -0400, Michelle Murrain wrote:
> I recently upgraded from 6.5 to 7.1, and it mostly went smoothly (fixed the
> PHP problem, thanks to a list member). But now some of my perl stuff is
> being  a bit strange, and I'm wondering whether other folks have noticed
> strangeness  when they upgraded their Postgres as well as upgraded to the
> new DBD::Pg.

Here's a patch to DBD::Pg 0.98, which should fix the problems.

--- dbdimp.c.orig       Tue May  1 11:46:47 2001
+++ dbdimp.c    Tue May  1 11:55:26 2001
@@ -72,18 +72,21 @@
     char *error_msg;
 {
     D_imp_xxh(h);
-    char *err, *src, *dst;
+    char *err, *src, *dst, *end;
     int  len  = strlen(error_msg);

-    err = (char *)malloc(strlen(error_msg + 1));
+    err = (char *)malloc(len + 1);
     if (!err) {
       return;
     }
+    /* Remove trailing newlines, allowing for multi-line messages */
+    for(end = error_msg + len; end > error_msg && end[-1] == '\n'; --end);
+
     src = error_msg;
     dst = err;

     /* copy error message without trailing newlines */
-    while (*dst != '\0' && *dst != '\n') {
+    while (src < end){
         *dst++ = *src++;
     }
     *dst = '\0';


--
    Peter Haworth    pmh@edison.ioppublishing.com
"It's gotten to the point where the only place you can get work done is at
home, because no one bugs you, and the best place to entertain yourself is
at work, because the Internet connections are faster."      -- Scott Adams

pgsql-general by date:

Previous
From: Michelle Murrain
Date:
Subject: Re: wierd problems with DBI/DBD::pg?
Next
From: Fran Fabrizio
Date:
Subject: Stranger than fiction...