Re: [HACKERS] compile warning in CVS HEAD - Mailing list pgsql-patches

From Bruce Momjian
Subject Re: [HACKERS] compile warning in CVS HEAD
Date
Msg-id 200404271604.i3RG4tS27186@candle.pha.pa.us
Whole thread Raw
In response to Re: [HACKERS] compile warning in CVS HEAD  (Andrew Dunstan <andrew@dunslane.net>)
List pgsql-patches
Where are we on this patch?  There was concern about the malloc() but
that can be fixed.

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

Andrew Dunstan wrote:
>
> Patch attached. Also adds a malloc() check that Neil wanted.
>
> cheers
>
> andrew
>
> Tom Lane wrote:
>
> >Andrew Dunstan <andrew@dunslane.net> writes:
> >
> >
> >>*sigh*
> >>
> >>
> >
> >
> >
> >>my local (linux) man for gettimeofday says this:
> >>
> >>
> >
> >
> >
> >>       struct timeval {
> >>               time_t         tv_sec;        /* seconds */
> >>               suseconds_t    tv_usec;  /* microseconds */
> >>       };
> >>
> >>
> >
> >Yeah, but mine (HPUX) says that tv_sec is "unsigned long".  I suspect
> >that on Darwin the types disagree as to signedness.
> >
> >
> >
> >>We could do what you say, or could we just cast it?
> >>
> >>
> >
> >If they really were different types (as in different widths) then
> >casting the pointer would be a highly Wrong Thing.  I think copying
> >to a local is safer, even if it does waste a cycle or two.
> >
> >            regards, tom lane
> >
> >---------------------------(end of broadcast)---------------------------
> >TIP 6: Have you searched our list archives?
> >
> >               http://archives.postgresql.org
> >
> >
> >

> Index: src/backend/utils/error/elog.c
> ===================================================================
> RCS file: /projects/cvsroot/pgsql-server/src/backend/utils/error/elog.c,v
> retrieving revision 1.128
> diff -c -r1.128 elog.c
> *** src/backend/utils/error/elog.c    15 Mar 2004 15:56:23 -0000    1.128
> --- src/backend/utils/error/elog.c    18 Mar 2004 22:55:44 -0000
> ***************
> *** 1035,1041 ****
> --- 1035,1045 ----
>       int result_len = 2*NAMEDATALEN + format_len +120 ;
>
>       if (result == NULL)
> +     {
>           result = malloc(result_len);
> +         if (result == NULL)
> +             return "";
> +     }
>       result[0] = '\0';
>
>       if (format_len > 0)
> ***************
> *** 1119,1126 ****
>                                localtime(&stamp_time));
>                       break;
>                   case 's':
>                       j += strftime(result+j, result_len-j, "%Y-%m-%d %H:%M:%S",
> !                              localtime(&(MyProcPort->session_start.tv_sec)));
>                       break;
>                   case 'i':
>                       j += snprintf(result+j,result_len-j,"%s",
> --- 1123,1131 ----
>                                localtime(&stamp_time));
>                       break;
>                   case 's':
> +                     stamp_time = (time_t)(MyProcPort->session_start.tv_sec);
>                       j += strftime(result+j, result_len-j, "%Y-%m-%d %H:%M:%S",
> !                              localtime(&stamp_time));
>                       break;
>                   case 'i':
>                       j += snprintf(result+j,result_len-j,"%s",

>
> ---------------------------(end of broadcast)---------------------------
> TIP 6: Have you searched our list archives?
>
>                http://archives.postgresql.org

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

pgsql-patches by date:

Previous
From: Christopher Kings-Lynne
Date:
Subject: Re: ALTER TABLE...SET WITHOUT CLUSTER
Next
From: Bruce Momjian
Date:
Subject: Re: [HACKERS] compile warning in CVS HEAD