Commit Graph

471 Commits

Author SHA1 Message Date
Marcus Boerger
ebd735786c - Catch exceptions in cli -a 2009-01-02 13:14:17 +00:00
Sebastian Bergmann
7f4dc8702a Bump copyright year, 3 of 3. 2008-12-31 11:12:40 +00:00
Stanislav Malyshev
636b2c9a6f MF5: Merge namespaces changes 2008-12-04 20:12:30 +00:00
Dmitry Stogov
e5454b359a Fixed bug #46409 (__invoke method called outside of object context when using array_map) 2008-11-27 19:02:45 +00:00
Etienne Kneuss
8251921307 Fix #46241 (stacked error_handlers, error_handling in general) 2008-11-19 01:59:07 +00:00
Etienne Kneuss
ee9cbc9fed Use enum alternative instead of explicit value 2008-10-02 19:53:48 +00:00
Antony Dovgal
e632946e9b initialize variable 2008-10-01 14:30:50 +00:00
Dmitry Stogov
a28485ccf5 Fixed bug #46106 (Memory leaks when using global statement) 2008-09-17 15:11:40 +00:00
Etienne Kneuss
4396e6ec11 Fix #45656 (new Class silenting exceptions in autoloaders) 2008-09-15 10:19:15 +00:00
Dmitry Stogov
1c683b2f0a Fixed bug #45910 (Cannot declare self-referencing constant) 2008-08-26 08:38:15 +00:00
Marcus Boerger
75b08f4adf - Improved exception linking 2008-08-14 10:06:39 +00:00
Nuno Lopes
a99fad3b16 MFB: move empty_fcall_info* to const table 2008-08-12 21:52:54 +00:00
Marcus Boerger
7f6d70ee5b - Fix shutdown order 2008-08-11 17:33:02 +00:00
Marcus Boerger
034d2e5916 - Turns out the easy solution for correct error_handling doesn't work. So
we need to provide save/replace/restore functions right away. It also
  to save/restore in the vm.
2008-08-08 17:10:49 +00:00
Marcus Boerger
805cc4bf50 - PHP 5.3 todo, store error handling mode on stack when executing internal
or overloaded functions and methods. The issue is that a function might
  set and rely on a certain mode and then calls another internal function
  which changes it again, probably changing it back to the normal mode.
  With this change we need to drop all calls that change the mode back to
  normal using php_std_error_handling(). However there might be places
  where someone wants to restore the last mode. If there is such a case we
  need to add two functions one to save and one to restore. I briefly on
  this and not all cases are clear, especially one in sqlite but that seems
  to be a rather misleading comment. Eitherway I chose to not drop and mark
  as deprecated for now.
2008-08-08 13:18:31 +00:00
Dmitry Stogov
d93a86b4d2 Fixed bug #44100 (Inconsistent handling of static array declarations with duplicate keys). 2008-08-01 14:21:46 +00:00
Dmitry Stogov
192caef98c Added support for overloaded functions (e.g. COM) in call_user_func(). 2008-07-26 17:01:59 +00:00
Dmitry Stogov
bdf7981e28 Fixed is_callable/call_user_func mess that had done different things for very similar arguments e.g. array("A","B") and "A::B" 2008-07-26 13:14:56 +00:00
Dmitry Stogov
013059c247 Fixed uninitialized data 2008-07-25 08:53:11 +00:00
Dmitry Stogov
72dfe66661 LSB parent/self forwarding 2008-07-24 10:14:01 +00:00
Dmitry Stogov
8d2e0a7e0f Added closures support 2008-07-08 07:05:04 +00:00
Felipe Pena
0e74a12ae1 - MFB: Fixed bug #45180 ('class::method' works differently than array('class', 'method')) 2008-06-05 19:14:25 +00:00
Felipe Pena
737dd4ef6e - MFB: Fixed bug #45089 (__callStatic $name case sensitivity) 2008-06-03 19:01:26 +00:00
Dmitry Stogov
37691b0cd0 Use IS_CV for dirrent access to $this variable 2008-05-07 12:04:58 +00:00
Dmitry Stogov
ad9b3c053b Use lazy symbol table initialization for op_arrays called from internal php functions 2008-05-06 17:01:07 +00:00
Dmitry Stogov
c9652e94f5 GC fix 2008-05-06 16:02:50 +00:00
Dmitry Stogov
20abb52b1e Added missing lazy initialization 2008-04-29 09:18:54 +00:00
Dmitry Stogov
1d0f893b49 Lazy EG(active_symbol_table) initialization 2008-04-29 08:15:49 +00:00
Dmitry Stogov
b287ccf508 Optimized ZEND_RETURN opcode to not allocate and copy return value if it is not
used.
2008-04-11 09:43:49 +00:00
Rasmus Lerdorf
b911467d1d MFB
Here are the signal changes from the 5.3 branch that optimizes signal
handler registration and switches from longjmp to siglongjmp in order
to make signal mask handling consistent across different UNIX operating
systems.
2008-03-19 16:37:49 +00:00
Dmitry Stogov
ea9305c543 Implemented concept of "delayed early binding" that allows opcode caches to perform class declaration (early and/or run-time binding) in exactly the same order as vanila php.
The following pseudo-code explains how it should be used in opcode cache.

function cache_compile_file($filename) {
        if (!is_cached($filename)) {
                ...
                orig_compiler_options = CG(compiler_optins);
                CG(compiler_options) |= ZEND_COMPILE_IGNORE_INTERNAL_CLASSES |
                                        ZEND_COMPILE_DELAYED_BINDING;
                $op_array = orig_compile_file($filename);
                CG(compiler_options) = orig_copiler_options;
                ...
        } else {
                $op_array = restore_from_cache($filename);
        }
        zend_do_delayed_early_binding($op_array);
}
2008-03-18 08:36:49 +00:00
Felipe Pena
3cbc824eb7 Better readability (USTR_BYTES) 2008-03-07 00:51:02 +00:00
Dmitry Stogov
d5e54a7f27 Fixed shared memory corruption of opcode caches 2008-03-04 11:44:15 +00:00
Marcus Boerger
6b58678c63 - Add E_DEPRECATED (Lars Strojny, Felipe Pena, Marcus) 2008-02-23 17:03:53 +00:00
Marcus Boerger
8b12839a3b -Add comment that explains wh we need E_ERROR in those cases 2008-02-02 15:46:19 +00:00
Marcus Boerger
f7a0a44b84 - MFB static callable message mess 2008-02-02 15:23:22 +00:00
Antony Dovgal
dbd82ddf19 fix #43973 (__autoload called with wrong classname when triggered by static callback)
the issue was present only in HEAD
patch by Felipe
2008-01-30 12:30:57 +00:00
Dmitry Stogov
e8ecba4872 Fixed bug #43323 (Wrong count abstract methods). (Felipe, Dmitry) 2008-01-29 11:13:52 +00:00
Dmitry Stogov
2971e13836 Changed EG(argument_stack) implementation. 2008-01-24 09:41:48 +00:00
Dmitry Stogov
6847c18150 Added garbage collector 2008-01-22 09:29:29 +00:00
Dmitry Stogov
27d1e925e2 Changed exception handling. Now each op_array doesn't contain ZEND_HANDLE_EXCEPTION opcode in the end 2008-01-21 19:41:41 +00:00
Marcus Boerger
505ffcbca8 - Fix the fix 2008-01-15 11:47:29 +00:00
Marcus Boerger
0da8866e3f - Fix memleak (found by colder) 2008-01-14 18:14:00 +00:00
Dmitry Stogov
1d9894a0c5 Added missing warning message 2008-01-10 09:38:41 +00:00
Sebastian Bergmann
9b620d50b4 Bump copyright year, 2 of 2. 2007-12-31 07:12:20 +00:00
Dmitry Stogov
1ccc6a4f10 Fixed bug #43651 (is_callable() with one or more nonconsecutive colons crashes) 2007-12-25 10:58:49 +00:00
Dmitry Stogov
31f6f1583e Fixed bug #43344 (Wrong error message for undefined namespace constant) 2007-12-07 17:12:22 +00:00
Dmitry Stogov
3f247aaf10 Fixed bug #43136 (possible crash on script execution timeout. The EG(function_state_ptr) is completely removed, EG(current_execute_data)->function_state must be used instead) 2007-11-20 09:51:44 +00:00
Dmitry Stogov
860fd6fd2b Reimplemented support for namespaces in indexes id constant arrays (removed zval.idx_type) 2007-11-02 10:11:59 +00:00
Jani Taskinen
9cc90f23b3 ws + cs + fix test 2007-11-02 00:15:13 +00:00