Commit Graph

463 Commits

Author SHA1 Message Date
Hannes Magnusson
306c42023e Callable typehint following the rules of is_callable($arg, false); 2011-08-16 10:44:47 +00:00
Felipe Pena
f9ca0cacb3 - Revert r314387
(property_info.name has the mangled name)
2011-08-07 13:04:02 +00:00
Rasmus Lerdorf
71af9259e3 Use property_info.name here instead since *name might be free'ed at this point
@dmitry please review
2011-08-07 00:01:17 +00:00
Felipe Pena
9c289189d3 - Added missing PHP_FE_END/ZEND_FE_END 2011-08-06 01:22:27 +00:00
Rasmus Lerdorf
dc1e148165 Another potential missing va_end() found by Coverity 2011-08-05 22:26:16 +00:00
Derick Rethans
ecd9d194d0 - Added a check for an enviroment variable (ZEND_DONT_UNLOAD_MODULES) that, if
set, prevents PHP from dl_closing() modules on shutdown.
- This makes it possible to spot memory leaks with valgrind in shared modules.
2011-07-14 12:21:15 +00:00
Felipe Pena
17a7fd0656 - Minor optimization taking the computed hash of interned strings 2011-07-10 12:37:42 +00:00
Felipe Pena
5d20a8f801 - Minor optimization, use the computed hash when available 2011-07-10 02:00:00 +00:00
Felipe Pena
8f4d497964 - Missing fixes for grammar fix 's/valid path/a valid path/' 2011-06-09 00:23:43 +00:00
Felipe Pena
547ab48521 s/valid path/a valid path/ 2011-06-08 00:53:55 +00:00
Felipe Pena
4737910b69 - Added new parameter parsing option (p - for valid path (string without null byte in the middle))
# The tests will be fixed in the next commits
2011-06-06 21:28:16 +00:00
Stanislav Malyshev
d7c9c5af92 scalar types cleanup 2011-06-03 01:09:32 +00:00
Dmitry Stogov
d9ba7820d4 Fixed bug #54910 (Crash when calling call_user_func with unknown function name) 2011-05-31 09:20:51 +00:00
Pierre Joye
6aed81764e - fix bug #54423, fix build in trunk, introduce by previous related commit 2011-03-31 23:58:06 +00:00
Antony Dovgal
6e7a3015e5 fix bug #54423 (classes from dl()'ed extensions are not destroyed) 2011-03-31 11:59:34 +00:00
Felipe Pena
c6544fad1a - Fixed bug #53717 (checking the number of arguments is wrong in zend_parse_method_parameters_ex())
patch by: klaus at triendl dot eu
2011-01-12 22:17:10 +00:00
Felipe Pena
0203cc3d44 - Year++ 2011-01-01 02:17:06 +00:00
Dmitry Stogov
3690ce39d9 zend_collect_module_handlers() has to be called after zend_extensions startup, because they can register additional 'hidden' extensions 2010-10-15 07:30:24 +00:00
Hartmut Holzgraefe
aaa2f1c30b marked char pointer arguments as const in lots of
places where strings pointed to are not modified 
to prevent compiler warnings about discarded qualifiers ...
2010-10-14 21:33:10 +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
Dmitry Stogov
7566ff38a1 Fixed support for static properties of internal classes 2010-08-11 08:34:54 +00:00
Felipe Pena
3ea3bbaca3 - Fix ZTS build 2010-07-06 15:52:39 +00:00
Dmitry Stogov
1a1178a685 eliminated unnecessary iterations during request startup/shutdown 2010-07-06 11:40:17 +00:00
Dmitry Stogov
578d3159c6 Conditional compilation is replaced by macro 2010-05-26 15:42:59 +00:00
Antony Dovgal
435aa876fc fix zend_std_get_static_property() in ZTS mode 2010-05-25 20:16:14 +00:00
Dmitry Stogov
f7ce69585c - Interned string related callbacks moved turned from compiler_globals into real globals
- Updated API version number
2010-05-25 09:00:20 +00:00
Ilia Alshanetsky
33fae4caa0 Added support for numeric & scalar type hint as defined within
http://wiki.php.net/rfc/typecheckingstrictandweak RFC
2010-05-24 18:32:59 +00:00
Dmitry Stogov
f23e857676 Fixed ZTS build 2010-05-24 17:07:52 +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
Derick Rethans
1bc9247651 - Added scalar typehinting. 2010-05-20 19:18:35 +00:00
Felipe Pena
f5f4a35927 - Fixed bug #51827 (Bad warning when register_shutdown_function called with wrong num of parameters) 2010-05-14 23:48:03 +00:00
Dmitry Stogov
f4b927a42b Fixed a possible memory corruption because of unexpected call-time pass by refernce and following memory clobbering through callbacks. 2010-05-11 10:41:19 +00:00
Johannes Schlüter
eb7e848f34 spread some more const 2010-04-28 10:11:50 +00:00
Dmitry Stogov
dd5c478be6 Added concept of interned strings. All strings constants known at compile time are allocated in a single copy and never changed. 2010-04-20 11:05:54 +00:00
Dmitry Stogov
94dd83722b Changed the structure of op_array.opcodes. The constant values are moved from opcode operands into a separate literal table 2010-04-20 10:57:45 +00:00
Pierre Joye
15a3c450b7 - those are in 5.3.2 now, merge to 5.3.2 section is coming 2010-02-11 21:17:13 +00:00
Sebastian Bergmann
d2281d1dff sed -i "s#1998-2009#1998-2010#g" **/*.c **/*.h **/*.php 2010-01-05 20:46:53 +00:00
Stanislav Malyshev
b9acd57000 fix flags handling in zend_parse_method_parameters_ex 2009-12-24 00:15:13 +00:00
Dmitry Stogov
832e181304 Reverted accidental change 2009-11-30 12:27:18 +00:00
Dmitry Stogov
5c56abb6e3 Fixed bug #50261 (Crash When Calling Parent Constructor with call_user_func()) 2009-11-30 11:39:53 +00:00
Pierre Joye
7f36b2ead4 - don't hide early declaration 2009-09-05 19:00:05 +00:00
Scott MacVicar
c54f6df978 Fix bug #48575 - Use dlopen() just like all the other *nixes instead of OSX specific code. 2009-08-06 01:33:54 +00:00
Felipe Pena
bffd08072c - MFH: Fixed bug #48899 (is_callable returns true even if method does not exist in parent class) 2009-07-15 01:11:24 +00:00
Matt Wilmas
b907aa4331 MFH:
Restored double->long conversion behavior to that of PHP 5.2 (on most platforms) and prior:
 * Out-of-range numbers overflow/preserve least significant bits (no LONG_MAX/MIN limit)
 * See bug #42868 (presumably-rare platform with different results in 5.2)
 * On 32-bit platforms with 64-bit long type, a zend_long64 cast has been added,
    otherwise it's the same as 5.2
 * Use this conversion method everywhere instead of some plain (long) casts

Added 'L' parameter parsing specifier to ensure a LONG_MAX/MIN limit:
 * Essentially what 5.3's new conversion was doing in most cases
 * Functions with "limit" or "length" type params could be updated to use this,
    and prevent confusing overflow behavior with huge numbers (*also* in 5.2)
  - See bug #47854, for example; or even #42868 again

# Test updates coming
2009-06-04 18:20:45 +00:00
Dmitry Stogov
82b86c1c38 Bug #47880 (crashes in call_user_func_array()) 2009-04-06 11:10:32 +00:00
Dmitry Stogov
875a27b7ed Fixed bug #47851 (is_callable throws fatal error) 2009-04-02 09:56:33 +00:00
Dmitry Stogov
343bcc26ab Fixed double efree() 2009-03-24 16:35:53 +00:00
Dmitry Stogov
5d060ebe05 Fixed __call() to be invoked on private/protected method access through callbacks 2009-01-14 11:56:08 +00:00
Sebastian Bergmann
08659c2dcd MFH: Bump copyright year, 3 of 3. 2008-12-31 11:15:49 +00:00
Dmitry Stogov
7d4fd3fd38 Fixed bug #46409 (__invoke method called outside of object context when using array_map) 2008-11-27 19:01:23 +00:00