Thread

  1. Re: Results of port of Sept 18 port of PostgreSQL

    Bruce Momjian <maillist@candle.pha.pa.us> — 1998-09-22T16:41:59Z

    > Dear Bruce,
    > 
    > > 
    > > > At this point the Irix port is nearly complete. There are two problems
    > > > that remain. 
    > > > 
    > > > First, the snprintf function does not process the %lld format
    > > > correctly. Frankly, there is no reason to use it in
    > > > src/backend/utils/adt/int8.c because there is not chance of exceeding
    > > > the supplied buffer.  sprintf is safe in this circumstance and works
    > > > correctly.
    > > 
    > > Are you talking about the Irix snprintf, our our ports/snprintf.c?
    > 
    > Irix doesn't have snprintf, so I'm talking about your ports. They
    > are missing %lld formats.
    
    OK, we need our ports snprintf() to understand %lld.  Marc?
    
    -- 
    Bruce Momjian                          |  830 Blythe Avenue
    maillist@candle.pha.pa.us              |  Drexel Hill, Pennsylvania 19026
    http://www.op.net/~candle              |  (610) 353-9879(w)
      +  If your life is a hard drive,     |  (610) 853-3000(h)
      +  Christ can be your backup.        |
    
    
  2. Re: [HACKERS] Re: Results of port of Sept 18 port of PostgreSQL

    Marc G. Fournier <scrappy@hub.org> — 1998-09-23T01:46:14Z

    On Tue, 22 Sep 1998, Bruce Momjian wrote:
    
    > > Irix doesn't have snprintf, so I'm talking about your ports. They
    > > are missing %lld formats.
    > 
    > OK, we need our ports snprintf() to understand %lld.  Marc?
    
    	Ack...I just borrowed what was in sendmail...are you saying that
    sendmail doesn't work under Irix either? :(
    
    	Ah, okay, just looking at the source code itself...neat, I think
    :)  How does this look?  '%lld == long long', correct?
    
    *** snprintf.c.orig     Tue Sep 22 22:41:46 1998
    --- snprintf.c  Tue Sep 22 22:44:26 1998
    ***************
    *** 126,131 ****
    --- 126,132 ----
            int ch;
            long value;
            int longflag  = 0;
    +       int longlongflag  = 0;
            int pointflag = 0;
            int maxwidth  = 0;
            char *strvalue;
    ***************
    *** 167,173 ****
                                     len = va_arg( args, int );
                                   goto nextch;
                           case '.': pointflag = 1; goto nextch;
    !                        case 'l': longflag = 1; goto nextch;
                             case 'u': case 'U':
                                     /*fmtnum(value,base,dosign,ljust,len,zpad) */
                                     if( longflag ){
    --- 168,178 ----
                                     len = va_arg( args, int );
                                   goto nextch;
                           case '.': pointflag = 1; goto nextch;
    !                        case 'l': if(longflag) {
    !                                    longlongflag = 1; goto nextch;
    !                                  } else {
    !                                    longflag = 1; goto nextch;
    !                                  }
                             case 'u': case 'U':
                                     /*fmtnum(value,base,dosign,ljust,len,zpad) */
                                     if( longflag ){
    ***************
    *** 186,192 ****
    --- 191,201 ----
                                     fmtnum( value, 8,0, ljust, len, zpad ); break;
                             case 'd': case 'D':
                                     if( longflag ){
    +                                  if( longlongflag ) {
    +                                        value = va_arg( args, long long );
    +                                  } else {
                                             value = va_arg( args, long );
    +                                  }
                                     } else {
                                             value = va_arg( args, int );
                                     }
    
    
    
  3. Re: [HACKERS] Re: Results of port of Sept 18 port of PostgreSQL

    Bruce Momjian <maillist@candle.pha.pa.us> — 1998-09-23T02:32:09Z

    > On Tue, 22 Sep 1998, Bruce Momjian wrote:
    > 
    > > > Irix doesn't have snprintf, so I'm talking about your ports. They
    > > > are missing %lld formats.
    > > 
    > > OK, we need our ports snprintf() to understand %lld.  Marc?
    > 
    > 	Ack...I just borrowed what was in sendmail...are you saying that
    > sendmail doesn't work under Irix either? :(
    
    Not for long long's, no.
    
    > 
    > 	Ah, okay, just looking at the source code itself...neat, I think
    > :)  How does this look?  '%lld == long long', correct?
    
    Yes.
    
    Sure, throw it in and let him test it.
    
    > 
    > *** snprintf.c.orig     Tue Sep 22 22:41:46 1998
    > --- snprintf.c  Tue Sep 22 22:44:26 1998
    > ***************
    > *** 126,131 ****
    > --- 126,132 ----
    >         int ch;
    >         long value;
    >         int longflag  = 0;
    > +       int longlongflag  = 0;
    >         int pointflag = 0;
    >         int maxwidth  = 0;
    >         char *strvalue;
    > ***************
    > *** 167,173 ****
    >                                  len = va_arg( args, int );
    >                                goto nextch;
    >                        case '.': pointflag = 1; goto nextch;
    > !                        case 'l': longflag = 1; goto nextch;
    >                          case 'u': case 'U':
    >                                  /*fmtnum(value,base,dosign,ljust,len,zpad) */
    >                                  if( longflag ){
    > --- 168,178 ----
    >                                  len = va_arg( args, int );
    >                                goto nextch;
    >                        case '.': pointflag = 1; goto nextch;
    > !                        case 'l': if(longflag) {
    > !                                    longlongflag = 1; goto nextch;
    > !                                  } else {
    > !                                    longflag = 1; goto nextch;
    > !                                  }
    >                          case 'u': case 'U':
    >                                  /*fmtnum(value,base,dosign,ljust,len,zpad) */
    >                                  if( longflag ){
    > ***************
    > *** 186,192 ****
    > --- 191,201 ----
    >                                  fmtnum( value, 8,0, ljust, len, zpad ); break;
    >                          case 'd': case 'D':
    >                                  if( longflag ){
    > +                                  if( longlongflag ) {
    > +                                        value = va_arg( args, long long );
    > +                                  } else {
    >                                          value = va_arg( args, long );
    > +                                  }
    >                                  } else {
    >                                          value = va_arg( args, int );
    >                                  }
    > 
    > 
    
    
    -- 
    Bruce Momjian                          |  830 Blythe Avenue
    maillist@candle.pha.pa.us              |  Drexel Hill, Pennsylvania 19026
    http://www.op.net/~candle              |  (610) 353-9879(w)
      +  If your life is a hard drive,     |  (610) 853-3000(h)
      +  Christ can be your backup.        |
    
    
  4. Re: [HACKERS] Re: Results of port of Sept 18 port of PostgreSQL

    Marc G. Fournier <scrappy@hub.org> — 1998-09-23T03:11:49Z

    On Tue, 22 Sep 1998, Bruce Momjian wrote:
    
    > > 	Ah, okay, just looking at the source code itself...neat, I think
    > > :)  How does this look?  '%lld == long long', correct?
    > 
    > Yes.
    > 
    > Sure, throw it in and let him test it.
    
    	Done...
    
    
    Marc G. Fournier                                
    Systems Administrator @ hub.org 
    primary: scrappy@hub.org           secondary: scrappy@{freebsd|postgresql}.org 
    
    
    
  5. RE: [HACKERS] Re: Results of port of Sept 18 port of PostgreSQL

    Taral <taral@mail.utexas.edu> — 1998-09-24T01:09:49Z

    >         long value;
    > +                                        value = va_arg( args, 
    > long long );
    
    Um, no.
    
    Try "long long value;"
    
    JP Sugarbroad