Commit Graph

220 Commits

Author SHA1 Message Date
Dmitry Stogov
8c885b8913 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:30 +00:00
Marcus Boerger
af316021e8 - Rewrite scanner to be based on re2c instead of flex
The full patch is available as:
  http://php.net/~helly/php-re2c-5.3-20080316.diff.txt
  This is against php-re2c repository version 98
  An older patch against version 97 is available under:
  http://php.net/~helly/php-re2c-97-20080316.diff.txt
2008-03-16 21:06:55 +00:00
Marcus Boerger
0ebb904bbb - Small improvements, no malloc needed for the zval 2008-02-03 17:49:46 +00:00
Dmitry Stogov
8cab54a897 Fixed bug #43968 (Extending internal class causes a crash)
The fix is a workaround for GCC optizer bug.
2008-01-29 20:01:31 +00:00
Sebastian Bergmann
d1dded8751 MFH: Bump copyright year, 2 of 2. 2007-12-31 07:17:19 +00:00
Jani Taskinen
2bc631fb40 MFH:- Added common getopt implementation to core.
MFH:- Added long-option feature to getopt().
MFH:- Made getopt() available on win32 systems.
MFH:  Patch by: David Soria Parra <dsp@php.net>
[DOC]: These changes will be available from 5.3+

# Note: Fixed also tests and synced basic_functions.c with HEAD.
2007-10-01 12:40:54 +00:00
Stanislav Malyshev
50293835bf remove unneeded variables 2007-08-08 23:51:57 +00:00
Antony Dovgal
3285bd834b fix folding 2007-06-04 09:47:54 +00:00
Johannes Schlüter
9edf1dc617 - MFH: Fix build without reflection 2007-05-06 12:57:50 +00:00
Marcus Boerger
3cd6bc54bc - MFH --ri does not require ext/Reflection
- MFH --ini to show ini files being used
2007-05-05 16:21:07 +00:00
Hannes Magnusson
42170968cf MFH: php --ri main 2007-04-25 09:56:29 +00:00
foobar
75d8d28e71 - Fix a possible leak when multiple -c parameters are used 2007-04-17 19:46:13 +00:00
Antony Dovgal
dfbc224555 MFH 2007-02-22 10:06:22 +00:00
Antony Dovgal
4a95928d1d MFH: implement PHP_STREAM_FLAG_NO_CLOSE and avoid hacks 2007-02-21 21:57:21 +00:00
Antony Dovgal
748b6fdeb3 MFH: make use of startup hooks 2007-02-20 19:20:41 +00:00
Marcus Boerger
38201d8d12 - MFH php --ri <extension> 2007-02-08 16:55:34 +00:00
Sebastian Bergmann
4223aa4d5e MFH: Bump year. 2007-01-01 09:36:18 +00:00
Antony Dovgal
41b55d9b78 MFH 2006-12-21 00:47:02 +00:00
Ilia Alshanetsky
be18d5f345 Restore support for unquoted -d options 2006-09-22 17:41:09 +00:00
Dmitry Stogov
7d14dad02e MFH: Fixed mess with CGI/CLI -d command line option (now it works with cgi; constants are working exactly like in php.ini; with FastCGI -d affects all requests). 2006-09-19 20:33:12 +00:00
Antony Dovgal
4b257a1c0e fix leak with php -c /path -h 2006-09-15 08:18:36 +00:00
Dmitry Stogov
f7e99a2162 Fixed bug #38543 (shutdown_executor() may segfault when memory_limit is too low). 2006-08-22 12:04:53 +00:00
Antony Dovgal
6c52ec1319 MFH: fix #37920 (compilation problems on z/OS) 2006-06-27 08:27:10 +00:00
Antony Dovgal
20a379fa7d MFH: initialize pointers 2006-06-20 12:55:26 +00:00
Michael Wallner
f4106441cb - Fix Bug #37780 memory leak trying to execute a non existing file (CLI) 2006-06-19 14:52:34 +00:00
Johannes Schlüter
2f418134ff MFH 2006-06-03 22:02:02 +00:00
Dmitry Stogov
1f41b288e9 Fixed bug #37306 (max_execution_time = max_input_time) 2006-05-11 22:10:31 +00:00
Marcus Boerger
77c1b56cd7 - Update after api changes 2006-05-10 00:00:13 +00:00
Johannes Schlüter
7409ed6403 - MFH: List --rf/--rc/--re only with enabled reflection 2006-02-21 21:15:13 +00:00
Marcus Boerger
cb27823e82 - MFH Show the exact version 2006-01-22 22:09:54 +00:00
Marcus Boerger
575e6b6e7c - Make clear what -a mode gets you 2006-01-14 02:09:37 +00:00
foobar
5bd93221a8 bump year and license version 2006-01-01 12:51:34 +00:00
Marcus Boerger
c19fa0bbde - MFH Add method support to --rfunction 2005-12-11 02:41:04 +00:00
Marcus Boerger
ba6c82eee9 - MFH --r* switches 2005-12-11 02:17:34 +00:00
foobar
d95275052b MFH 2005-12-06 01:08:49 +00:00
foobar
c127df868e MFH: - Fix compile failure when ext/readline is compiled as shared (bug #35249) 2005-11-17 08:37:31 +00:00
Ilia Alshanetsky
57e49322a5 Fixed memory leak on php-cli -h 2005-11-15 15:27:26 +00:00
foobar
6ec23a56d8 MFH:- Fixed minor leak with -dzlib.output_compression=1 -m 2005-11-06 22:42:23 +00:00
Ilia Alshanetsky
5bb29235dc MFH: Fixed -m memory leak 2005-10-19 21:57:45 +00:00
foobar
28a0aef13e MFH: removed confusing dot. 2005-10-11 18:58:59 +00:00
Johannes Schlüter
d3dc0a39bc - MFH: Fix #34557 php -m exits with "error" 1 2005-10-06 20:29:41 +00:00
foobar
000a9e3015 - Fixed problem with -dextension=foobar.so not having it's MINIT run. 2005-08-08 16:49:44 +00:00
Hartmut Holzgraefe
621238a3c3 fix extension loading from command line, resources didn't work
(still related to Bug #33899)
2005-08-08 08:45:33 +00:00
Ilia Alshanetsky
a462e687dc Fixed possible memory corruption. 2005-06-21 00:12:35 +00:00
Marcus Boerger
acd747d374 - Expose -a as special mode and show whether it is a shell or not 2005-06-06 07:11:08 +00:00
Johannes Schlüter
bb6f4dfc7d - Fix readline loop-condition
- Fix cli_is_valid_code detection
2005-05-17 14:33:15 +00:00
Marcus Boerger
51fe495ea1 - Add command completion to CLI's -a mode 2005-05-14 19:33:18 +00:00
Marcus Boerger
1623537998 - Improved interactive mode of CLI (php -a) 2005-05-07 12:24:18 +00:00
Antony Dovgal
9ba5535993 fix #28803 (enabled debug causes bailout errors with CLI on AIX
because of fflush() called on already closed filedescriptor)
2005-03-22 15:08:52 +00:00
foobar
a98460beac Revert bad idea. (no more error for invalid -d options) 2005-03-18 22:11:53 +00:00
foobar
9c2c04b580 - Made CLI option -d output error and exit if an non-existing (or unmodifyable) entry is passed 2005-03-17 13:43:32 +00:00
Derick Rethans
42b9b26e45 - ZTS fixes
#- Andrei, it would be nice if you could test ZTS builds too before you
#  commit...
2005-03-17 07:31:22 +00:00
Andrei Zmievski
06667585b5 Make it possible to load shared extensions from command line via
-dextension= mechanism.
2005-03-15 22:41:12 +00:00
Wez Furlong
07fd652824 it's 2005 already
# and we're all too lazy to go through and update all the copyright years :)
2005-03-12 14:07:35 +00:00
foobar
2c65e09a4b - Revert the weird change of ZEND_STRS() macro and use the correct
ZEND_STRL() macro.
# ZEND_STRS was changed to be same as ZEND_STRL..someone on crack? :)
2005-01-20 02:02:09 +00:00
Rasmus Lerdorf
fdaa130f3a Add the new request_time sapi struct entry to all the sapis. Some of these
may have ways of getting the request time without the extra syscall, but
for now let's just make sure we don't crash and people will eventually
fill these in where applicable.
2004-12-20 19:33:41 +00:00
Antony Dovgal
71d9afee0c fix CLI leaks when using malformed option string 2004-11-15 14:00:48 +00:00
Edin Kadribasic
546e5bbc43 Made php -m output sorted case-insensitevly 2004-07-14 22:30:29 +00:00
Moriyoshi Koizumi
26799b851f - typo (must have sleep.) 2004-03-04 22:53:09 +00:00
Moriyoshi Koizumi
e5fb0e3fbd - Prevent cli from printing multiple "Interactive mode enabled" if
the command line option is given more than once (like -aaaaaa).
2004-03-04 22:49:54 +00:00
Marcus Boerger
1c00296cc7 Bugfix #27104 CLI/CGI SAPI module variable name conflict 2004-02-11 21:00:46 +00:00
Ilia Alshanetsky
c858a4e93c Fixed possible memory leak with INI values. 2004-02-06 03:08:27 +00:00
Ilia Alshanetsky
ffd3b1dd0a Parse command line ini directives passed using -d before -i, to ensure
correct settings output.
2004-02-04 22:49:28 +00:00
Wez Furlong
31f7699a85 Add optional php-win.exe variation of the CLI sapi.
php-win.exe runs in the windows GUI subsystem, and thus
has no console; stdio handles are effectively set to /dev/null
and no "dos box" will appear on screen when running scripts
using this sapi (php-gtk people will be familiar with this concept).

Aside from those differences, php-win.exe is 100% identical to
regular CLI
2004-01-14 03:14:18 +00:00
Andi Gutmans
dbeb4158d2 - A belated happy holidays and PHP 5 2004-01-08 08:18:22 +00:00
Edin Kadribasic
d2317fc110 Disable output buffering in CLI overriding php.ini setting.
Fixes #26755.
2004-01-02 22:31:32 +00:00
Wez Furlong
d756e1db23 add win32 configure option for CLI to switch on CRT heap debugging 2003-12-22 13:08:04 +00:00
Ilia Alshanetsky
a643675b43 Fixed extra byte allocation for STD* constants and replace magic numbers
with sizeof().
2003-12-11 23:51:24 +00:00
Stanislav Malyshev
06273c5637 MF4: -m fix for premature extension unloading 2003-08-28 11:50:32 +00:00
Marcus Boerger
d3473d1f58 - Provide a unified way to display uncaught exceptions, which shows
file/line/message info if possible.
- Add zend_eval_string_ex() to be able to handle exceptions in eval'd code.
- Use above function to fix memleaks in CLI.
2003-08-24 13:10:03 +00:00
Ilia Alshanetsky
bccc247a97 Set module id 0 (internal) for constants registered by php_cli in C. 2003-08-22 01:50:02 +00:00
Marcus Boerger
744dd20520 Fix warnings 2003-08-17 19:14:30 +00:00
Ilia Alshanetsky
98d998b7ee Fixed bug #20896 (-s -w modes with php-cli cause php to hang). 2003-08-13 01:29:51 +00:00
Ilia Alshanetsky
3253746c26 Preserve exit status for non-php execution modes. 2003-08-01 16:52:49 +00:00
Ilia Alshanetsky
68616d764c Fixed bug #23509 (exit code lost when exit() called from
register_shutdown_function())
2003-08-01 12:26:28 +00:00
Stanislav Malyshev
7e663790c7 flush after banner print 2003-06-16 16:14:38 +00:00
James Cox
f68c7ff249 updating license information in the headers. 2003-06-10 20:04:29 +00:00
Derick Rethans
814f793035 - MFB: Version output beautification 2003-05-30 16:10:58 +00:00
Marcus Boerger
6ddd6ca2be MFB 2003-05-30 00:11:37 +00:00
Marcus Boerger
1aebe79599 Simply print errors 2003-05-29 14:45:03 +00:00
Derick Rethans
87a85db670 - MFB 2003-05-26 18:37:48 +00:00
Edin Kadribasic
43e54bf2c1 More clean way of ignoring headers in CLI since we do not need to
disable them selectively. This fixes problems for people who want
to use session module in CLI.
2003-04-28 10:04:50 +00:00
Marcus Boerger
1c1aa38ee5 Reset option parsing
# i swear i had them in before last commit
2003-04-27 19:41:36 +00:00
Marcus Boerger
129d0898ca split parameter parsing once more: do informal queries before others
#still a memleak in case of a parameter conflict
2003-04-27 19:19:29 +00:00
Marcus Boerger
d2833dc9c2 Revert some ini settings to be hardcoded due to popular demand 2003-04-23 22:52:44 +00:00
Marcus Boerger
de76ceb2d3 Fix more shutdown wierdness 2003-04-19 15:02:44 +00:00
Wez Furlong
7ca29424c4 Fix folding marker 2003-04-19 14:41:31 +00:00
Marcus Boerger
0bcfdd0262 Do init CG(in_compilation) here until someone finds a better place 2003-04-19 13:54:01 +00:00
Marcus Boerger
1b3467e72d Shutdown memleaks 2003-04-19 00:02:50 +00:00
foobar
2170ea8b4d Added missing CVS Id tags 2003-04-16 02:34:57 +00:00
Marcus Boerger
bb0f885d51 Hopefully last fix on error reporting 2003-04-09 00:38:19 +00:00
Marcus Boerger
7aa1e2cda4 more ini defaults for error message handling 2003-03-30 14:00:09 +00:00
Marcus Boerger
06a0e1c112 simplify and fix 2003-03-30 11:07:36 +00:00
Marcus Boerger
c21f2b7493 use sizeof() as suggested by Andrei 2003-03-29 21:23:53 +00:00
Derick Rethans
fa59090287 - html errors should default to off (0) in CLI 2003-03-29 20:57:31 +00:00
Sebastian Bergmann
5ca078779a Eliminate some TSRMLS_FETCH() calls. Tested with Win32 build of SAPI/CGI and SAPI/CLI on Win32. 2003-03-25 08:07:13 +00:00
Marcus Boerger
58df04af27 - reenable $argc/$argv
- add a comment where hardcoded defaults would go
# i believe we have none for now though
2003-03-19 20:36:04 +00:00
Marcus Boerger
3e621fac94 make phpinfo() depend on executed sapi 2003-03-18 20:52:52 +00:00
Marcus Boerger
b21fdb762a use new callback to overwrite ini settings
# ok now lets split html_errors and phpinfo() formatting
2003-03-18 15:56:12 +00:00
Marcus Boerger
d4fd1c07b1 - Allow long option names
- Update CLI's manpage

@Added support for long options in CLI & CGI (e.g. --version). (Marcus)

# In contrast to the preliminary patch this should work now completely.
# If all long option names are accepted we may even think about MFHing.
2003-02-16 01:23:11 +00:00