Can't post to php-cvs :-(

> > jeroen Sun Aug  5 16:27:04 2001 EDT
> >
> >   Modified files:
> >     /php4/ext/standard math.c
> >   Log:
> >   Bugfix in abs(), abs(LONG_MIN) was bogus
> 
> ---AND---
> - Replaced the pow(LONG_MIN,1) fix for a better one
> - Removed bogus left-over comment in pow()
> ------
> 
> (thought I already committed that...)
> 
> >
> > Index: php4/ext/standard/math.c
> > diff -u php4/ext/standard/math.c:1.51 php4/ext/standard/math.c:1.52
> > --- php4/ext/standard/math.c:1.51 Sun Aug  5 10:40:14 2001
> > +++ php4/ext/standard/math.c Sun Aug  5 16:27:03 2001
> > @@ -19,7 +19,7 @@
> >
> +----------------------------------------------------------------------+
> >  */
> >
> > -/* $Id: math.c,v 1.51 2001/08/05 14:40:14 stas Exp $ */
> > +/* $Id: math.c,v 1.52 2001/08/05 20:27:03 jeroen Exp $ */
> >
> >  #include "php.h"
> >  #include "php_math.h"
> > @@ -49,7 +49,11 @@
> >   if (Z_TYPE_PP(value) == IS_DOUBLE) {
> >   RETURN_DOUBLE(fabs(Z_DVAL_PP(value)));
> >   } else if (Z_TYPE_PP(value) == IS_LONG) {
> > - RETURN_LONG(Z_LVAL_PP(value) < 0 ? -Z_LVAL_PP(value) :
> Z_LVAL_PP(value));
> > + if (Z_LVAL_PP(value) == LONG_MIN) {
> > + RETURN_DOUBLE(-(double)LONG_MIN);
> > + } else {
> > + RETURN_LONG(Z_LVAL_PP(value) < 0 ? -Z_LVAL_PP(value) :
> Z_LVAL_PP(value));
> > + }
> >   }
> >
> >   RETURN_FALSE;
> > @@ -466,19 +470,10 @@
> >   }
> >   case 1:
> >   RETURN_LONG(1);
> > - case LONG_MIN: /* special case since -LONG_MIN == 0 */
> > - /* lexp != 0, and only lexp==1 is LONG, DOUBLE otherwise */
> > - if (lexp == 1) {
> > - RETURN_LONG(LONG_MIN);
> > - } else {
> > - dval = exp(log(-(double)LONG_MIN) * (double)lexp);
> > - RETURN_DOUBLE(lexp&1 ? -dval : dval);
> > - }
> >   default:
> >   /* abs(lbase) > 1 */
> > - dval = exp(log((double) (lbase>0?lbase:-lbase)) *
> > + dval = exp(log(lbase>0? (double)lbase : -(double)lbase ) *
> >     (double) lexp);
> > - /* long result = 1; */
> >   if (lexp < 0 || dval > (double) LONG_MAX) {
> >   /* 1/n ( abs(n) > 1 ) || overflow */
> >   RETURN_DOUBLE(((lexp & 1) && lbase<0) ? -dval : dval);
> >
> >
> 


-- 
PHP Development Mailing List <http://www.php.net/>
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]

Reply via email to