[PHP-CVS] com php-src: Fix DateInterval->days value when object was created not from DateTime::diff(): ext/date/php_date.c ext/date/tests/DateInterval_days_prop1.phpt

2013-08-24 Thread Stanislav Malyshev
Commit:a8dc4f0b18ea2fba0df6a627210beea0c5eda80f
Author:Alexander Moskalev  Wed, 10 Apr 
2013 00:12:39 +0400
Parents:   626effcf1736f7f14e1c01ec52d62a55cf70cd9d
Branches:  master

Link:   
http://git.php.net/?p=php-src.git;a=commitdiff;h=a8dc4f0b18ea2fba0df6a627210beea0c5eda80f

Log:
Fix DateInterval->days value
when object was created not from DateTime::diff()

Changed paths:
  M  ext/date/php_date.c
  A  ext/date/tests/DateInterval_days_prop1.phpt


Diff:
diff --git a/ext/date/php_date.c b/ext/date/php_date.c
index 13e7b75..ce891d9 100644
--- a/ext/date/php_date.c
+++ b/ext/date/php_date.c
@@ -3470,7 +3470,11 @@ zval *date_interval_read_property(zval *object, zval 
*member, int type, const ze
ALLOC_INIT_ZVAL(retval);
Z_SET_REFCOUNT_P(retval, 0);
 
-   ZVAL_LONG(retval, value);
+   if (value != -9) {
+   ZVAL_LONG(retval, value);
+   } else {
+   ZVAL_FALSE(retval);
+   }
 
if (member == &tmp_member) {
zval_dtor(member);
diff --git a/ext/date/tests/DateInterval_days_prop1.phpt 
b/ext/date/tests/DateInterval_days_prop1.phpt
new file mode 100644
index 000..3907974
--- /dev/null
+++ b/ext/date/tests/DateInterval_days_prop1.phpt
@@ -0,0 +1,10 @@
+--TEST--
+Wrong var_dump(DateInterval->days) value
+--FILE--
+days);
+--EXPECT--
+bool(false)


--
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php



[PHP-CVS] com php-src: Fix DateInterval->days value when object was created not from DateTime::diff(): ext/date/php_date.c ext/date/tests/DateInterval_days_prop1.phpt

2013-08-24 Thread Stanislav Malyshev
Commit:b378b0b081c2c3dd4a7aa25ce4d37bad48db752e
Author:Alexander Moskalev  Wed, 10 Apr 
2013 00:12:39 +0400
Committer: Stanislav Malyshev   Sat, 24 Aug 2013 23:38:33 
-0700
Parents:   e22c139fe09db7e74ad027db49d76921fc1a19fd
Branches:  PHP-5.4 PHP-5.5 master

Link:   
http://git.php.net/?p=php-src.git;a=commitdiff;h=b378b0b081c2c3dd4a7aa25ce4d37bad48db752e

Log:
Fix DateInterval->days value when object was created not from DateTime::diff()

Changed paths:
  M  ext/date/php_date.c
  A  ext/date/tests/DateInterval_days_prop1.phpt


Diff:
diff --git a/ext/date/php_date.c b/ext/date/php_date.c
index f091fed..1c97781 100644
--- a/ext/date/php_date.c
+++ b/ext/date/php_date.c
@@ -3568,7 +3568,11 @@ zval *date_interval_read_property(zval *object, zval 
*member, int type, const ze
ALLOC_INIT_ZVAL(retval);
Z_SET_REFCOUNT_P(retval, 0);
 
-   ZVAL_LONG(retval, value);
+   if (value != -9) {
+   ZVAL_LONG(retval, value);
+   } else {
+   ZVAL_FALSE(retval);
+   }
 
if (member == &tmp_member) {
zval_dtor(member);
diff --git a/ext/date/tests/DateInterval_days_prop1.phpt 
b/ext/date/tests/DateInterval_days_prop1.phpt
new file mode 100644
index 000..627b8f0
--- /dev/null
+++ b/ext/date/tests/DateInterval_days_prop1.phpt
@@ -0,0 +1,10 @@
+--TEST--
+Wrong var_dump(DateInterval->days) value
+--FILE--
+days);
+--EXPECT--
+bool(false)


--
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php