| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
| |
Instead of marking unreachable code with `ZEND_ASSERT(0)`, we introduce
`ZEND_UNREACHABLE()`, so that MSVC which does not consider `assert(0)`
to mark unreachable code does no longer trigger C4715[1] warnings in
debug builds. This may be useful for other compilers as well.
[1] <https://docs.microsoft.com/de-de/cpp/error-messages/compiler-warnings/compiler-warning-level-1-c4715?view=vs-2019>
|
|
|
|
|
|
|
|
| |
The implementation of that RFC changed the initial value of
`zend_array.nNextFreeElement` to `-1`; we work around that by inserting
first, and retrieving the index afterwards.
We also fix the erroneous printf specifier for the unsigned integer.
|
|\
| |
| |
| |
| | |
* PHP-7.4:
Fix #73927: phpdbg fails with windows error prompt at "watch array"
|
| |
| |
| |
| |
| |
| | |
We expect zvals, so we should request zvals.
We also suppress spurious watchpoint removal notices.
|
|\ \
| |/
| |
| |
| |
| |
| |
| | |
* PHP-7.4:
Enable phpdbg tests on AppVeyor
Make phpdbg test portable
Fix several mostly Windows related phpdbg bugs
Fix #73926: phpdbg will not accept input on restart execution
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
* Properly initialize PHPDBG_G(watch_tmp)
Otherwise that may cause segfaults in ZTS builds.
* Deactivate potentially remaining watchpoints after REPL
Otherwise the memory could still be protected, resulting in segfaults
during shutdown.
* NULL zend_handlers_table after freeing
As of commit 4130fe4[1], the `zend_handlers_table` is explicitly
freed in the `zend_vm_dtor()`. Since phpdbg (and maybe some other
SAPIs) may restart the engine afterwards, we have to make sure that
the table is also NULLed.
* Only set context option if there is a context
In other words, we must not follow the null pointer.
* Cater to file handles without attached console
File handles do not necessarily have an attached console (for
instance, pipes do not), in which case `GetConsoleScreenBufferInfo()`
fails. In this case we set a default value (`40`) for lines like on
other systems.
[1] <http://git.php.net/?p=php-src.git;a=commit;h=4130fe437a5db7ead1444d3748bd0fbad9829cb2>
|
| | |
|
| | |
|
|/
|
|
| |
Closes GH-4732.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
Signed-off-by: Gabriel Caruso <carusogabriel34@gmail.com>
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
| |
- ichanged zval_update_constant_ex(). Use IS_TYPE_IMMUTABLE flag on shared constants and AST, instead of "inline_change" parameter.
|
| |
|
|\
| |
| |
| |
| | |
* PHP-5.6:
Happy new year (Update copyright to 2016)
|
| | |
|
| | |
|
| |
| |
| |
| | |
commits(remote debugging/xml protocol)
|
| |
| |
| |
| | |
This fixes reported issues with sapi/phpdbg/tests/watch_001.phpt
|
| |
| |
| |
| |
| |
| | |
This prevented compilation warnings and disclosed few incorrect usages in Zend/zend_vm_def.h and ext/dom/xpath.c.
Now explicit type casting may be required on call site.
This may break some C extension code, but it shoulfn't be a problem to add explicit casting.
|
| | |
|
| | |
|
| |
| |
| |
| | |
phpdbg without hacks and ABI breaks.
|
| | |
|
| |
| |
| |
| | |
semantick changes).
|
| | |
|
| | |
|
| | |
|
| |
| |
| |
| | |
Follow up for d0cb7153
|
| | |
|
| |
| |
| |
| |
| | |
Now each HashTable is also zend_array, so it's refcounted and may be a subject for Copy on Write
zend_array_dup() was changed to allocate and return HashTable, instead of taking preallocated HashTable as argument.
|
| | |
|
| | |
|
| | |
|
|\ \
| |/ |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
|/ |
|
|
|
|
|
| |
* phpdbg/master:
C89 compat
|
|
|
|
|
|
|
| |
* phpdbg/master:
removed /EHa as __try/__catch syntax is used anyway
fix ZEND_DEBUG usage
fix CFLAGS_PHPDBGS and some formatting
|