This patch has been applied to DBDpg and will appear in the next
official release. Thanks.

---------------------------------------------------------------------------

Peter Haworth wrote:
> On Thu, 3 May 2001 15:24:31 -0400, Vivek Khera wrote:
> > Hi, I'm using DBD::Pg version 0.98 with Postgres 7.1.  I'm noticing
> > that quite often on an error, the $dbh->errstr method doesn't return
> > the full error.
> 
> Here's a patch to DBD::Pg 0.98 which fixes this:
> 
> --- 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   [EMAIL PROTECTED]
> "A good messenger expects to get shot."
>       --Larry Wall
> 
> ---------------------------(end of broadcast)---------------------------
> TIP 1: subscribe and unsubscribe commands go to [EMAIL PROTECTED]
> 

-- 
  Bruce Momjian                        |  http://candle.pha.pa.us
  [EMAIL PROTECTED]               |  (610) 359-1001
  +  If your life is a hard drive,     |  13 Roberts Road
  +  Christ can be your backup.        |  Newtown Square, Pennsylvania 19073

Reply via email to