Bob Weinand
99d1a1bb3f
Shut up, my lovely compiler; I do not like your warnings
2014-04-11 19:33:56 +02:00
Nikita Popov
f449b04713
Fix some ZTS issues and leaks
2014-04-10 13:50:25 +02:00
Dmitry Stogov
7402af380b
Fixed destruction of objects and iterators on unclean request shutdown and GC (few cases are still unfixed).
...
Now we destroy objects it two steps. At first - object properties of all objects and only then the objects their selves.
2014-04-09 01:50:15 +04:00
Dmitry Stogov
4456bfaa72
Avoid unnecessry reallocations
2014-04-01 23:27:51 +04:00
Dmitry Stogov
ea85451b65
Refactored data structures to keep zend_object* instead of a whole zval in some places
2014-03-28 02:11:22 +04:00
Dmitry Stogov
8bfd9a0e57
Fixed memory leak
2014-03-27 16:43:40 +04:00
Dmitry Stogov
887189ca31
Refactored IS_INDIRECT usage for CV and object properties to support HashTable resizing
2014-03-26 18:07:31 +04:00
Dmitry Stogov
2adecc6dc2
Fixed reference separation
2014-03-18 12:37:51 +04:00
Dmitry Stogov
5343cd3216
Fixed guard support in magic method __set()
2014-03-07 02:03:25 +04:00
Dmitry Stogov
3733737328
Handle interned strings as non-refcounted scalars
2014-03-05 13:55:56 +04:00
Dmitry Stogov
db7b5325f0
Fixed IS_REFERENCE separation
2014-03-05 00:28:01 +04:00
Dmitry Stogov
f88816acbb
Fixed next index insetion through magic function ($obj[] = ...)
2014-03-04 16:07:42 +04:00
Dmitry Stogov
46ab80b48e
Temporary fix for reference counting
2014-02-28 23:42:32 +04:00
Dmitry Stogov
29d61b6527
Fixed refcounting
2014-02-28 23:25:06 +04:00
Dmitry Stogov
e26722c2fa
Fixed access to undefined properties
2014-02-28 16:56:52 +04:00
Dmitry Stogov
e43d0d1717
fixed refcounting in "$a->magic_prop += 2"
2014-02-27 23:18:37 +04:00
Dmitry Stogov
c5a508582f
Fixed refcounting
2014-02-27 18:10:42 +04:00
Dmitry Stogov
9d6cce629a
Fixed __get() related memleak
2014-02-27 16:58:18 +04:00
Dmitry Stogov
1c3ba95bb5
Refactored read_property() and read_dimension() handlers
2014-02-27 15:40:13 +04:00
Xinchen Hui
f4a70fa759
Fixed has_propery
2014-02-26 11:18:19 +08:00
Dmitry Stogov
b965647e44
Merge branch 'refactoring2' of github.com:zendtech/php into refactoring2
...
Conflicts:
Zend/zend_object_handlers.c
2014-02-25 15:23:06 +04:00
Xinchen Hui
40a9132de8
zend_hash_add might return NULL in ext/standard/tests/serialize/serialization_objects_011.php
2014-02-25 18:29:20 +08:00
Xinchen Hui
346d52c2c4
Fixed asseration fail
2014-02-25 18:22:54 +08:00
Dmitry Stogov
6ee86d0c29
Fixed dynamic properies table construction
2014-02-25 13:02:34 +04:00
Dmitry Stogov
73b8e9aef4
Fixed wrong condition
2014-02-24 14:06:39 +04:00
Dmitry Stogov
454e9911ad
Fixed new dynamic propery creation
2014-02-24 14:00:52 +04:00
Dmitry Stogov
1770ace249
Fixed object to string conversion
2014-02-24 13:49:53 +04:00
Dmitry Stogov
fd87bde4d6
Fixed error messages
2014-02-24 13:19:32 +04:00
Xinchen Hui
915a8a2d42
Fixed test ext/standard/tests/strings/bug26817.php
2014-02-23 18:22:53 +08:00
Dmitry Stogov
2711e368b8
Fixed error messages
2014-02-22 00:41:06 +04:00
Dmitry Stogov
6454684212
Use better data structures (incomplete)
2014-02-21 22:59:51 +04:00
Dmitry Stogov
52bd62eca8
Fixed assertions
2014-02-21 20:35:40 +04:00
Xinchen Hui
f4f7a80a2c
Merge branch 'refactoring2' of github.com:zendtech/php into refactoring2
2014-02-21 21:02:12 +08:00
Dmitry Stogov
6fbea9ce6a
Fixed exception constructor
2014-02-21 16:14:42 +04:00
Dmitry Stogov
51d7c4828a
Fixed tests/run-test/test009.phpt
2014-02-21 15:48:56 +04:00
Xinchen Hui
e193944b3e
Fixed segfault in ext/standard/tests/strings/addslashes_variation1.php
2014-02-21 16:56:23 +08:00
Sara Golemon
d301c35540
Merge branch 'PHP-5.6'
...
* PHP-5.6:
Add more tests for __debugInfo() and fix leak
2014-02-20 12:10:40 -08:00
Sara Golemon
14c08ea362
Add more tests for __debugInfo() and fix leak
2014-02-20 12:10:00 -08:00
Xinchen Hui
b917458490
Fixed segfault (Zend/tests/026.phpt now pass)
2014-02-20 15:39:46 +08:00
Xinchen Hui
3e89e92f57
Fixed possible NULL pointer dereference
2014-02-19 19:33:10 +08:00
Dmitry Stogov
9067dbcd0d
Use better data structures (incomplete)
2014-02-19 12:03:01 +04:00
Dmitry Stogov
557994d50d
Use better data structures (incomplete)
2014-02-19 01:12:05 +04:00
Sara Golemon
837af67271
Merge branch 'PHP-5.6'
...
* PHP-5.6:
Add __debugInfo() magic method
2014-02-17 19:37:55 -08:00
Sara Golemon
1e752ce9c5
Add __debugInfo() magic method
...
class Foo {
private $val = 'Random, meaningless data';
public function count() { return 42; }
public function __debugInfo() {
return ['count' => $this->count()];
}
}
$f = new Foo;
var_dump($f);
2014-02-17 19:33:56 -08:00
Dmitry Stogov
be82a07776
Use better data structures (incomplete)
2014-02-12 18:08:11 +04:00
Dmitry Stogov
f4cfaf36e2
Use better data structures (incomplete)
2014-02-10 10:04:30 +04:00
Nikita Popov
250ee4c17a
Merge branch 'PHP-5.6'
2014-01-04 01:30:44 +01:00
Nikita Popov
72a16851f4
Merge branch 'PHP-5.5' into PHP-5.6
2014-01-04 01:29:15 +01:00
Nikita Popov
d992a972c0
Merge branch 'PHP-5.4' into PHP-5.5
2014-01-04 01:24:54 +01:00
Nikita Popov
7e8e21df0c
Fix bug #66286 : Incorrect object comparison with inheritance
...
std_compare_objects immidiately returned 0 if the property tables
of both objects contain NULL at some index. Thus it would report
objects as equal even though properties following after that
differ.
2014-01-04 01:22:14 +01:00
Xinchen Hui
0f53e37494
Merge branch 'PHP-5.6'
2014-01-03 11:09:07 +08:00
Xinchen Hui
c081ce628f
Bump year
2014-01-03 11:08:10 +08:00
Xinchen Hui
47c9027772
Bump year
2014-01-03 11:06:16 +08:00
Xinchen Hui
c0d060f5c0
Bump year
2014-01-03 11:04:26 +08:00
Kalle Sommer Nielsen
d14670ccdb
Eliminate another TSRMLS_FETCH() in i_zend_is_true()
...
# Affected extensions have all been updated, ext/opcache and ext/zip
# both have macros for cross version compatibility
2013-12-18 07:25:05 +01:00
Kalle Sommer Nielsen
4411641b1e
Fix build
2013-12-12 20:25:10 +01:00
Nikita Popov
47ee470992
Make use of direct returns in some places
2013-08-31 13:16:50 +02:00
Nikita Popov
3823321c5c
Implement internal operator overloading
...
As pre RFC https://wiki.php.net/rfc/operator_overloading_gmp
2013-06-17 17:48:13 +02:00
Dmitry Stogov
a2d6d27458
Merge branch 'PHP-5.4' into PHP-5.5
...
* PHP-5.4:
Fixed bug #64720 (SegFault on zend_deactivate)
Conflicts:
NEWS
2013-05-21 10:15:37 +04:00
Dmitry Stogov
77fffff157
Fixed bug #64720 (SegFault on zend_deactivate)
2013-05-21 09:58:11 +04:00
Michael Moravec
70668fd88a
Fixed typo - inconsistent notice for undefined property (introduced by fix for #49348 )
2013-04-10 13:36:47 +08:00
Stanislav Malyshev
0c6d903ce7
fix bug #49348 - issue notice on get_property_ptr_ptr when used for read
2013-02-18 20:56:02 -08:00
Stanislav Malyshev
deeacc7106
Merge branch 'PHP-5.4' into PHP-5.5
...
* PHP-5.4:
fix bug #63462 (Magic methods called twice for unset protected properties)
NEWS for bug #64011 . See 77ee200
Fix bug #64011 (get_html_translation_table())
Fix News
Update the arguments in the prototype of fpm_socket_unix_test_connect().
fixed build
NEWS for bug #63893
Fixed inconsequential bug in strtr()
Revert "Apply the fputcsv test fix to SplFileObject_fputcsv.phpt. Mea culpa."
Revert "Update fputcsv() to escape all characters equally."
Remove _GNU_SOURCE, add local heap sort
The compiler can figure this out
Remove unused block
strtr() with 2nd param array - optimization
Refactoring, bugs & leaks
Optimize strtr w/ 2nd arg array
2013-01-18 13:42:04 -08:00
Stanislav Malyshev
9e7c2e5906
Merge branch 'PHP-5.3' into PHP-5.4
...
* PHP-5.3:
fix bug #63462 (Magic methods called twice for unset protected properties)
2013-01-18 13:35:09 -08:00
Stanislav Malyshev
33b104c778
fix bug #63462 (Magic methods called twice for unset protected properties)
2013-01-18 13:29:43 -08:00
Xinchen Hui
be07f815f2
Use zend_unmangle_property_name_ex to save strlen
2013-01-14 17:08:21 +08:00
Stanislav Malyshev
1a96fe0b32
fix bug #63982 : isset() inconsistently produces a fatal error on protected property
2013-01-13 17:08:52 -08:00
Dmitry Stogov
f9e8678dd3
Fixed bug #63882 (zend_std_compare_objects crash on recursion)
2013-01-09 11:30:50 +04:00
Xinchen Hui
0a7395e009
Happy New Year
2013-01-01 16:28:54 +08:00
Xinchen Hui
831fbcf385
Happy New Year
2013-01-01 16:23:31 +08:00
Xinchen Hui
3d86e6d881
Fixed bug #63726 (Memleak with static properties and internal/user classes)
...
No test scripts provided (will try to find one)
2012-12-10 20:29:51 +08:00
Xinchen Hui
ad553a7af2
Fixed bug #63726 (Memleak with static properties and internal/user classes)
2012-12-10 20:28:27 +08:00
Dmitry Stogov
6ba376f552
Merge branch 'PHP-5.3' into PHP-5.4
...
* PHP-5.3:
- Fixed bug #61767 (Shutdown functions not called in certain error situation) - Fixed bug #60909 (custom error handler throwing Exception + fatal error = no shutdown function)
Conflicts:
NEWS
Zend/zend_object_handlers.c
2012-09-06 12:14:29 +04:00
Dmitry Stogov
b29dc146b9
- Fixed bug #61767 (Shutdown functions not called in certain error situation)
...
- Fixed bug #60909 (custom error handler throwing Exception + fatal error = no shutdown function)
2012-09-06 11:26:40 +04:00
Stanislav Malyshev
a0dff6fdca
fix bug #61782 - __clone/__destruct do not match other methods when checking access controls
2012-05-13 14:40:44 -07:00
Felipe Pena
e4ca0ed09f
- Year++
2012-01-01 13:15:04 +00:00
Felipe Pena
4e19825281
- Year++
2012-01-01 13:15:04 +00:00
Xinchen Hui
2f62602c03
Fixed bug #60558 (Invalid read and writes)
...
Re-Fixed bug #60536 (Traits Segfault)
#Thanks to tony2001, I found the previous fix -r321089 is actually not a correct one.
#The key problem there is because the traits didn't correct set the property_info.offset
#for private properties. so here come the new fix.
2011-12-19 16:48:18 +00:00
Xinchen Hui
7fcba87e68
Revert previous bad fix, introduce memory leak
2011-12-19 12:00:09 +00:00
Xinchen Hui
d589d33468
Fixed bug #60558 (Invalid read and writes)
2011-12-19 09:58:29 +00:00
Xinchen Hui
db63456a8d
Reduce memory usage
2011-12-17 03:57:01 +00:00
Xinchen Hui
01dc47631e
Fixed bug #60536 (Traits Segfault)
...
# this is a tough one, I think I should explain
# Zend use zend_object->properties_table both as zval ** and zval ***
# if a zend_object->properties is not initialized, the properties_table is zval **
# while in rebuild_object_properties, zend will store the zval ** to zend_object->properties
# then stash the zval ***(ie, zobj->properties_table[0] is zval ** now) to zobj->properties_table[0]
# so when a zend_object inherit form multi parent and these parent have a same property_info->offset
# properties, will result in a repeat zval **->zval ** transform, which will lead to a segmentfault
# *may be* this fix is not the best fix, we should not use this tricky way, and rewrite this mechanism.
2011-12-16 19:02:52 +00:00
Dmitry Stogov
e0f781f496
Fixed bug #60139 (Anonymous functions create cycles not detected by the GC)
2011-11-02 06:31:33 +00:00
Etienne Kneuss
c2a92317f4
Fix folding
2011-09-15 14:50:38 +00:00
Dmitry Stogov
4a25a7740d
Fixed ZE specific compile warnings (Bug #55629 )
2011-09-13 13:29:35 +00:00
Dmitry Stogov
03b6daed4f
Fixed bug #54372 (Crash accessing global object itself returned from its __get() handle)
2011-04-07 13:35:27 +00:00
Dmitry Stogov
2e25ec9eb7
Fixed bug #54372 (Crash accessing global object itself returned from its __get() handle)
2011-04-07 13:35:27 +00:00
Felipe Pena
927bf09c29
- Year++
2011-01-01 02:19:59 +00:00
Felipe Pena
0203cc3d44
- Year++
2011-01-01 02:17:06 +00:00
Felipe Pena
e3ced0b540
- Reverted fix for bug #51176
2010-11-03 01:35:26 +00:00
Felipe Pena
815d0e549b
- Reverted fix for bug #51176
2010-11-03 01:35:26 +00:00
Dmitry Stogov
4d8503a212
Fixed bug #52879 (Objects unreferenced in __get, __set, __isset or __unset can be freed too early). (mail_ben_schmidt at yahoo dot com dot au, Dmitry)
2010-10-01 09:49:20 +00:00
Dmitry Stogov
f64e4bac49
Fixed bug #52879 (Objects unreferenced in __get, __set, __isset or __unset can be freed too early). (mail_ben_schmidt at yahoo dot com dot au, Dmitry)
2010-10-01 09:49:20 +00:00
Dmitry Stogov
f2df6a4a3e
- Improved memory usage
...
. zend_function.pass_rest_by_reference is replaced by
ZEND_ACC_PASS_REST_BY_REFERENCE in zend_function.fn_flags
. zend_function.return_reference is replaced by ZEND_ACC_RETURN_REFERENCE
in zend_function.fn_flags
. zend_arg_info.required_num_args removed. it was needed only for internal
functions. Now the first arg_info for internal function (which has special
meaning) is represented by zend_internal_function_info structure.
. zend_op_array.size, size_var, size_literal, current_brk_cont,
backpatch_count moved into CG(context), because they are used only during
compilation.
. zend_op_array.start_op is moved into EG(start_op), because it's used
only for 'interactive' execution of single top-level op-array.
. zend_op_array.done_pass_two is replaced by ZEND_ACC_DONE_PASS_TWO in
zend_op_array.fn_flags.
. op_array.vars array is trimmed (reallocated) during pass_two.
. zend_class_entry.constants_updated is replaced by
ZEND_ACC_CONSTANTS_UPDATED in zend_class_entry.ce_flags
. the size of zend_class_entry is reduced by sharing the same memory space
by different information for internal and user classes.
See zend_class_inttry.info union.
2010-09-15 07:38:52 +00:00
Felipe Pena
c0e6f37cb9
- Fixed bug #52484 (__set() ignores setting properties with empty names)
2010-08-01 13:27:02 +00:00
Felipe Pena
e914d90643
- Fixed bug #52484 (__set() ignores setting properties with empty names)
2010-08-01 13:27:02 +00:00
Felipe Pena
f1e02c5cc7
- Fixed bug #52051 (handling of case sensitivity of old-style constructors changed in 5.3+)
2010-06-12 15:30:21 +00:00
Felipe Pena
2c2fcc2217
- Fixed bug #52051 (handling of case sensitivity of old-style constructors changed in 5.3+)
2010-06-12 15:30:21 +00:00
Dmitry Stogov
c5237d82bf
Added caches to eliminate repeatable run-time bindings of functions, classes, constants, methods and properties
2010-05-24 14:11:39 +00:00
Dmitry Stogov
277f271a83
Added compiler hints
2010-05-06 12:52:27 +00:00