1
0
mirror of https://github.com/php/php-src.git synced 2026-04-24 08:28:26 +02:00
Commit Graph

6443 Commits

Author SHA1 Message Date
Xinchen Hui 2f4875bf92 Fix bug #60611 (Segmentation fault with Cls::{expr}() syntax) 2011-12-27 08:38:18 +00:00
Stanislav Malyshev 0610ca459a Fix warning on non-numeric offsets 2011-12-22 03:22:42 +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 1a4a527c37 Codes standard & Remove useless empty lines 2011-12-19 10:05:48 +00:00
Xinchen Hui d589d33468 Fixed bug #60558 (Invalid read and writes) 2011-12-19 09:58:29 +00:00
Stanislav Malyshev 622412d8e6 implement the solution for isset/string offsets, fix bug #60362 2011-12-19 02:05:03 +00:00
Stefan Marr 3dc9f0abe6 Fixed inconsistent and broken handling of private properties in traits.
# The handling of private properties in classes is now consistent with private properties in traits.
# Perviously, privates could cause strict warnings, are were not properly merged into the class when
# the parent class had a private property of the same name. Now, we introduce it without notice,
# since it is a new and independent property, just like in normal classes.
# This problem was diagnosed while working on Bug #60536.
2011-12-17 14:26:39 +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
Pierrick Charron 3f2bcb7723 Coding standard 2011-12-06 06:44:22 +00:00
Xinchen Hui 95784cf6c5 remove irrelevant codes in test 2011-12-05 12:46:38 +00:00
Xinchen Hui 2f8c502d22 Add xfaild test for a secluded issue 2011-12-05 12:44:12 +00:00
Xinchen Hui d18a61aefb Fix typo 2011-12-05 12:33:56 +00:00
Dmitry Stogov 1d6c98a136 Fixed bug #60444 (Segmentation fault with include & class extending) 2011-12-05 09:20:12 +00:00
Dmitry Stogov 6cfbcb2268 Expose zend_signal_handler_unblock() to DSO extensions to allow usage of HANDLE_UNBLOCK_INTERRUPTIONS macro 2011-12-02 12:14:16 +00:00
Dmitry Stogov f10b3bb556 Fixed icorrect key length after updating constant index 2011-12-01 13:58:29 +00:00
Felipe Pena bfb1d38b9c - Added tests for bug #60350
patch by: php@mickweiss.com
2011-11-30 21:04:07 +00:00
Felipe Pena a89f1d3cfa - Fixed bug #60350 (No string escape code for ESC (ascii 27), normally \e)
patch by: php at mickweiss dot com
2011-11-30 19:42:59 +00:00
Stefan Marr db0888dfc1 Fixed Bug #60369 Crash with static property in trait 2011-11-23 21:24:34 +00:00
Antony Dovgal e14819439c export zend_on_timeout handler from ZE 2011-11-22 03:39:12 +00:00
Stanislav Malyshev 0f0ffd38c9 fix is_a reflection 2011-11-20 22:20:03 +00:00
Felipe Pena ebd7dc5f88 - Fix tests 2011-11-19 18:01:26 +00:00
Felipe Pena bc810a443d - Fixed bug #43200 (Interface implementation / inheritence not possible in abstract classes) 2011-11-19 13:36:03 +00:00
Felipe Pena cc8573e7a5 - CS 2011-11-18 13:56:41 +00:00
Stefan Marr 76772dc20d Fixes Bug #54441 (Handling of changing modifiers on a trait alias)
# this now results also in a compilation error, since it would open the door for inconsistencies, and violates the DRY principle.
2011-11-18 13:49:07 +00:00
Dmitry Stogov a65abc12b6 Fixed bug #60138 (GC crash with referenced array in RecursiveArrayIterator) 2011-11-18 12:43:53 +00:00
Stanislav Malyshev 66877fbd15 fix typo 2011-11-18 09:15:15 +00:00
Stanislav Malyshev 77d0643b68 fixes for bug #55748 2011-11-18 07:11:19 +00:00
Felipe Pena c5ec9dd650 - Fix build 2011-11-17 21:07:52 +00:00
Stefan Marr c5ba229617 Fixed Bug #60165 (Aliasing unexisting trait should throw/trigger the exception/error)
- aliases that are not actually matching anything are treated as errors now. This
  will make sure that all methods that are expected to be in a class are actually
  there, or in case a trait changed for instance, that the code breaks already
  on composition
- Precedence declarations are also checked to ensure that the method
  which is supposed to take precedence actually exists, however,
  the other traits mentioned in the declaration are not regarded.
  We are more lenient here, since this avoids unnecessary fragility.
- fixed another seamingly unrelated test which broke in the progress
  but wasn't clear before either.
2011-11-17 21:04:15 +00:00
Felipe Pena 3c7a573a2c - Fixed bug #60099 (__halt_compiler() works in braced namespaces) 2011-11-16 17:41:40 +00:00
David Soria Parra c4d5231a36 Fix #60218 (instantiating unknown class leads to memory leak in cli) 2011-11-12 17:05:08 +00:00
Stanislav Malyshev 3598185a74 fix bug #55475 - implement is_a BC solution 2011-11-09 05:27:45 +00:00
Rasmus Lerdorf c3e56a152c Here too 2011-11-08 20:37:09 +00:00
Rasmus Lerdorf 9597bc0801 This really shouldn't fail, but if it does, like on OSX under Valgrind,
let's just issue a warning.
2011-11-08 20:32:29 +00:00
Dmitry Stogov cacf363957 Fixed bug #60104 (Segmentation Fault in pdo_sqlite when using sqliteCreateFunction()) 2011-11-08 10:11:25 +00:00
Felipe Pena ff48763f4b - Added class member access on instantiation (e.g. (new foo)->bar()) support 2011-11-06 13:25:45 +00:00
Stefan Marr 5745f95372 Fixed inconsistent whitespace.
# Belongs to svn rev. 318793.
2011-11-05 02:05:28 +00:00
Stefan Marr 7334dfd7eb Fixed Bug #60217 (Requiring the same method from different traits)
- also added test to check for inconsistent abstract method definitions, they need to be compatible
2011-11-05 01:46:40 +00:00
Antony Dovgal 36103d1236 use jmp_addr only when it's initialized 2011-11-03 08:39:12 +00:00
Xinchen Hui cae2f1381f Fix bug #60169 Conjunction of ternary and list crashes PHP 2011-11-03 03:59:41 +00:00
Ferenc Kovacs 5bf6eaf3f4 adding memory check for FreeBSD also, TODO: refactor the free memory check into a function in an include file 2011-11-02 21:27:03 +00:00
Antony Dovgal ed276758f7 fix folding, ws and cs 2011-11-02 21:12:13 +00:00
Antony Dovgal 8d520d6296 initialize variable and fix segfaulting tests 2011-11-02 21:05:36 +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
Ferenc Kovacs 8412709f37 allocating more than 2GB memory is slow. 2011-11-01 21:27:57 +00:00
Stefan Marr 4591498df7 Fixed Bug #60153 (Interface method prototypes not enforced when implementd via traits.)
# Moved the freeing of overriden functions to a point after the check.
# The new check comes after the normal inheritance check to give the first check
# the opportunity to abort with a more detailed error.
# Also fixed a small type in an unrelated test.
2011-11-01 15:25:24 +00:00
Stefan Marr 9b0d73af1d Added missing consistency check for abstract methods required by one trait and implemented by another. 2011-11-01 13:42:53 +00:00
Stefan Marr b5f15ef561 Fixed Bug #60145 (Usage of trait's use statement inside interfaces not properly checked.) 2011-11-01 00:39:10 +00:00