Commit graph

80 commits

Author SHA1 Message Date
Nikita Popov
a1e2c8870e Merge branch 'PHP-7.4' 2019-07-22 17:26:01 +02:00
Nikita Popov
d59aac58b3 Report errors from stream read and write operations
The php_stream_read() and php_stream_write() functions now return
an ssize_t value, with negative results indicating failure. Functions
like fread() and fwrite() will return false in that case.

As a special case, EWOULDBLOCK and EAGAIN on non-blocking streams
should not be regarded as error conditions, and be reported as
successful zero-length reads/writes instead. The handling of EINTR
remains unclear and is internally inconsistent (e.g. some code-paths
will automatically retry on EINTR, while some won't).

I'm landing this now to make sure the stream wrapper ops API changes
make it into 7.4 -- however, if the user-facing changes turn out to
be problematic we have the option of clamping negative returns to
zero in php_stream_read() and php_stream_write() to restore the
old behavior in a relatively non-intrusive manner.
2019-07-22 17:17:28 +02:00
twosee
61f78de486 Constify some char* arguments or return values of ZEND_API
Closes GH-4247.
2019-06-12 16:49:32 +02:00
Peter Kokot
5f8915786f Remove HAVE_SIGNAL_H
The `<signal.h>` header file is part of the standard C89 headers [1] and
on current systems can be included unconditionally.

Since file requires at least C89 or greater, the `HAVE_SIGNAL_H` symbol
defined by Autoconf in Zend.m4 [2] can be ommitted and simplifed.

The bundled libmagic (file) also ommits the usage of HAVE_SIGNAL_H since
5.35 however current version in PHP is very modified 5.34 version and
will be refactored separately. Check for HAVE_SIGNAL_H is therefore
still done in the configure.ac.

Refs:
[1] https://port70.net/~nsz/c/c89/c89-draft.html#4.1.2
[2] https://git.savannah.gnu.org/cgit/autoconf.git/tree/lib/autoconf/headers.m4
2019-04-07 15:55:34 +02:00
Joe Watkins
56293d0637
Merge branch 'PHP-7.3' into PHP-7.4
* PHP-7.3:
  Fix #77805 phpdbg build fails when readline is shared
2019-03-27 10:04:36 +01:00
Joe Watkins
eb405a2192
Merge branch 'PHP-7.2' into PHP-7.3
* PHP-7.2:
  Fix #77805 phpdbg build fails when readline is shared
2019-03-27 10:04:07 +01:00
Joe Watkins
7af270eb28
Fix #77805 phpdbg build fails when readline is shared 2019-03-27 10:02:42 +01:00
Dmitry Stogov
b0d76ed4ad Fixed ZTS cache usage 2019-03-12 15:05:56 +03:00
Zeev Suraski
0cf7de1c70 Remove yearly range from copyright notice 2019-01-30 11:03:12 +02:00
Peter Kokot
a3760badbe Bump phpdbg version to PHP_VERSION
The phpdbg sapi module is distributed with the release cycle of PHP.
This patch simplifes phpdbg versioning and bumps it to the PHP_VERSION.
2018-10-01 13:01:58 +02:00
Dmitry Stogov
ebd1f5af3e API cleanup.
Removed useless filename and lineno arguments, used in DEBUG build.
The patch doesn't break source compatibility of public API (only binary compatibility).
2018-07-23 15:24:07 +03:00
Xinchen Hui
a6519d0514 year++ 2018-01-02 12:57:58 +08:00
Xinchen Hui
7a7ec01a49 year++ 2018-01-02 12:55:14 +08:00
Dmitry Stogov
a7b6812ae6 Fixed stream handler override 2017-12-14 23:55:57 +03:00
Dmitry Stogov
83e495e0fd Move constants into read-only data segment 2017-12-14 22:14:36 +03:00
Xinchen Hui
9398f15efd Fixed condition check 2017-04-10 14:48:31 +08:00
Sammy Kaye Powers
dac6c639bb Update copyright headers to 2017 2017-01-04 11:23:42 -06:00
Bob Weinand
110a6cc6c0 Merge branch 'PHP-7.0' into PHP-7.1 2016-11-20 19:20:09 +01:00
Bob Weinand
bc30206b8a Revert "Revert "Remove a few unused write warning""
This reverts commit ff5a65d26b.

(With zend_ prefix now)
2016-11-20 19:18:50 +01:00
Nikita Popov
c58378619b Merge branch 'PHP-7.0' into PHP-7.1 2016-11-20 19:10:03 +01:00
Nikita Popov
ff5a65d26b Revert "Remove a few unused write warning (backport from master, oops)s"
This reverts commit c65d24eaa3.
2016-11-20 19:09:05 +01:00
Bob Weinand
b7fee22e73 Merge branch 'PHP-7.0' into PHP-7.1 2016-11-20 14:18:54 +01:00
Bob Weinand
c65d24eaa3 Remove a few unused write warning (backport from master, oops)s 2016-11-20 14:17:14 +01:00
Bob Weinand
f58cf8b24d Merge branch 'PHP-7.0' into PHP-7.1 2016-10-02 12:46:22 +01:00
Bob Weinand
417a8ef6b4 Fix run command args passing when inmidst execution 2016-10-02 12:45:20 +01:00
Bob Weinand
3fe1010cee Merge branch 'PHP-7.0' into PHP-7.1 2016-10-01 19:14:26 +01:00
Bob Weinand
9d537951c5 Add proper escape sequences and reading stdin from file in phpdbg run command 2016-10-01 19:05:19 +01:00
Anatol Belski
88d86aeb53 add missing header to fix build 2016-07-19 01:30:07 +02:00
Bob Weinand
d08cb90462 Cleanup zend_/signal usage in phpdbg.c 2016-07-13 00:37:25 +02:00
Bob Weinand
b00376884e Rewrite watchpoints to be much more stable
This mainly involves a separate abstraction layer for elements (e.g. $a->b) and watchpoints (on pointer of the Bucket for example).
Also better comparison handling (value backup vs. page dumps).

It is not yet finished (there are sometimes false positives announced and names not yet perfect), but the functionality is working and not crashing as far as I have tested.
Future scope is also relative watchpoints, e.g. "w $this->val expression()" which does not have the symbol tables as basis, but the value (in this example: return value of expression()) as basis.
2016-07-11 23:58:20 +02:00
Dmitry Stogov
c622cc4446 Fixed phpdbg build without --enable-zend-signals 2016-06-20 16:32:24 +03:00
Lior Kaplan
ed35de784f Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Happy new year (Update copyright to 2016)
2016-01-01 19:48:25 +02:00
Lior Kaplan
49493a2dcf Happy new year (Update copyright to 2016) 2016-01-01 19:21:47 +02:00
Felipe Pena
f231ddddaf - Implemented output paging 2015-10-18 12:08:04 -02:00
Bob Weinand
bccac3774b Fixed bug #70531 (-rr should not fallback to interactive mode in phpdbg) 2015-09-23 18:30:13 +02:00
Bob Weinand
6b3228fda4 Fix oplog with eval()ed code 2015-08-24 12:28:35 +01:00
Bob Weinand
64f25adb6b Remove -Wunused-result warnings 2015-07-27 15:02:01 +02:00
Bob Weinand
b4c595dd82 Fix op_arrays with opcache 2015-07-25 00:31:05 +02:00
Bob Weinand
13525328ed Cleanup shutdown, enable proper memory leak displaying
phpdbg should not memory leak...
2015-07-24 17:17:26 +02:00
Bob Weinand
50866846c4 We want to track phpdbg bugs in official bug tracker now; updated URL 2015-07-14 08:31:44 +02:00
Bob Weinand
29aad0ef45 Add phpdbg userland API to fetch oplog
We may want to add some opcode info later, so that "opcodes" mode is more helpful
2015-06-22 12:58:33 +02:00
Bob Weinand
73d31d44e8 Break on uncaught exceptions in current frame in phpdbg 2015-04-22 01:08:07 +02:00
Bob Weinand
f83ee6a05d Add next command / Fix recursion/exceptions with u/F/L 2015-04-21 12:31:57 +02:00
Bob Weinand
5f35e571fa show opcode count 2015-04-20 13:04:56 +02:00
Bob Weinand
1a249bd674 Shorten opline dump lines and show literals 2015-04-20 12:23:11 +02:00
Bob Weinand
740c86bcbd Stabilize watchpoints 2015-04-19 12:53:29 +02:00
Anatol Belski
49fdb8a91d fix include 2015-03-19 22:33:14 +01:00
Lior Kaplan
a4384bd3d4 s/PHP Version 5/PHP Version 7/g
Follow up for d0cb7153
2015-03-13 11:09:42 +02:00
Xinchen Hui
fc33f52d8c bump year 2015-01-15 23:27:30 +08:00
Xinchen Hui
0579e8278d bump year 2015-01-15 23:26:37 +08:00