]> granicus.if.org Git - php/commitdiff
- MFZE1
authorDerick Rethans <derick@php.net>
Sun, 14 Jul 2002 09:29:42 +0000 (09:29 +0000)
committerDerick Rethans <derick@php.net>
Sun, 14 Jul 2002 09:29:42 +0000 (09:29 +0000)
Zend/zend_operators.c

index 5fdd1c1eb6d1d7769804d84cbfa14fe3bbf9e8f2..32af2f076b0396479d5b9cb7103078ef90cce9fe 100644 (file)
@@ -1450,6 +1450,12 @@ static void increment_string(zval *str)
 ZEND_API int increment_function(zval *op1)
 {
        switch (op1->type) {
+               case IS_BOOL:
+                       if (op1->value.lval) {
+                               op1->type = IS_LONG;
+                       }
+                       op1->value.lval++;
+                       break;
                case IS_LONG:
                        if(op1->value.lval == LONG_MAX) {
                                /* switch to double */
@@ -1512,6 +1518,12 @@ ZEND_API int decrement_function(zval *op1)
        double dval;
        
        switch (op1->type) {
+               case IS_BOOL:
+                       if (!op1->value.lval) {
+                               op1->type = IS_LONG;
+                       }
+                       op1->value.lval--;
+                       break;
                case IS_LONG:
                        if(op1->value.lval == LONG_MIN) {
                                double d = (double)op1->value.lval;