Commit Graph

288 Commits

Author SHA1 Message Date
Felipe Pena
0fbe6a0c14 - MFH: Added TSRMLS_DC to apply_func_args_t and zend_hash_apply_with_arguments. 2008-07-24 19:52:24 +00:00
Olivier Hill
dc4bcc901b - New parameter parsing API for var.c & tests 2008-06-20 18:05:45 +00:00
Felipe Pena
5fe790929d - New parameter parsing API 2008-06-20 14:53:57 +00:00
Sebastian Bergmann
d1dded8751 MFH: Bump copyright year, 2 of 2. 2007-12-31 07:17:19 +00:00
Derick Rethans
9541a66cb8 - MFH: Fixed var_export() for array keys
- MFH: Fixed broken explode() test
2007-12-18 10:53:39 +00:00
Derick Rethans
fdafd5cf81 - MFH: Fixed Bug #42272 (var_export() incorrectly escapes char(0)). 2007-12-09 16:54:52 +00:00
Jani Taskinen
b489251177 - MFH from HEAD:
. Folding tags
  . Parameter parsing
  . SPL debug info
  . array function improvements (not all yet)
  . Improvements to function calling with call_user_* functions
  . Improvements to debugging info in var_dump/print_r
# I propably forgot already something but this all was pretty close tied
# to each other so it wasn't possible to do it in parts.
2007-11-02 19:40:39 +00:00
Marcus Boerger
00022a49ff - MFH missing get_debug_info piece 2007-11-01 16:54:43 +00:00
Marcus Boerger
8ce1211a62 - MFH debug object helper 2007-10-11 01:03:19 +00:00
Yiduo (David) Wang
4b4d634cb9 MFH: Added macros for managing zval refcounts and is_ref statuses 2007-10-07 05:22:07 +00:00
Antony Dovgal
7210ab5695 fix ws 2007-06-26 11:51:14 +00:00
Derick Rethans
3b481cef64 - MFH: Added the H modifier to create non-locale-aware non-fixed-precision
float representations.
- MFH: Fixed var_export() to use the new H modifier so that it can generate
  parsable PHP code for floats again, independent of the locale.
2007-06-19 12:20:50 +00:00
Dmitry Stogov
2a689a4267 64-bit support 2007-04-23 09:56:56 +00:00
Ilia Alshanetsky
4a33a63ab6 Fixed bug #40465 (Ensure that all PHP elements are printed by var_dump). 2007-02-16 03:41:56 +00:00
Sebastian Bergmann
4223aa4d5e MFH: Bump year. 2007-01-01 09:36:18 +00:00
Ilia Alshanetsky
7efb0a14f4 Use safe_emalloc() 2006-12-25 21:41:04 +00:00
Dmitry Stogov
53b088e60c Make MEMORY_LIMIT and ZEND_USE_MALLOC_MM to be always enabled. They don't make any significant slowdown, but incrise maintainability a lot. Note that the setting of memory_limit wasn't changes (neither in main/main.c nor in php.ini) and it still set to 16M. 2006-12-20 10:49:33 +00:00
Antony Dovgal
0ecaeb89d3 serialize() should use '.' as decimal point irrespectively to locale 2006-12-19 12:36:44 +00:00
Antony Dovgal
7df81307c1 MFH 2006-12-08 21:18:43 +00:00
Antony Dovgal
f71a310543 MFH: fix possible issue in the serializer, which might currupt struc when reallocating arguments stack 2006-12-08 20:59:31 +00:00
Ilia Alshanetsky
7b77d536c3 Fixed bug #37262 (var_export() does not escape \0 character). 2006-10-09 18:08:34 +00:00
Hannes Magnusson
d5ec319367 MFH: Update protos & arginfo for memory_get_usage() & memory_get_peak_usage() 2006-07-25 16:41:04 +00:00
Dmitry Stogov
356facf4af Changed memory_get_usage() and memory_get_peak_usage(). Optional boolean argument allows get memory size allocated by emalloc() (by default) or real size of memory allocated from system. 2006-07-25 13:40:05 +00:00
Marcus Boerger
5da6415bfe - MFH Correctly handle binary proeprty names which are not mangled 2006-07-24 23:40:57 +00:00
Marcus Boerger
d0f2f6cd04 - MFH zend_unmangle_property_name(), drop zend_unmangle_property_name_ex() 2006-07-24 18:03:45 +00:00
Dmitry Stogov
29ed52ffa4 New memory manager 2006-07-18 09:06:33 +00:00
Dmitry Stogov
83ac79600e Fixed bug #37947 (zend_ptr_stack reallocation problem) 2006-07-10 14:02:40 +00:00
Ilia Alshanetsky
5186ee9c59 Added memory_get_peak_usage() function for retrieving peak memory usage of
a PHP script.
2006-05-30 14:51:20 +00:00
Ilia Alshanetsky
f0cf877a81 Fixed bug #36957 (serialize() does not handle recursion). 2006-04-05 02:28:06 +00:00
Dmitry Stogov
97f463c156 Fixed debug_zval_dump() to support private and protected members 2006-03-10 08:42:56 +00:00
foobar
5bd93221a8 bump year and license version 2006-01-01 12:51:34 +00:00
Derick Rethans
8f4112bfdd - Fixed bug #29361 (var_export() producing invalid code). (Derick) 2005-10-17 14:38:12 +00:00
Antony Dovgal
4b9b5505f0 fix #34505 (possible memory corruption when unmangling properties with empty names)
2nd part
2005-09-16 17:11:02 +00:00
Dmitry Stogov
5682438549 Better fix for exceptions in __sleep() 2005-09-12 07:13:54 +00:00
Wez Furlong
6b0d0f7ceb allow exceptions thrown in __sleep to interrupt the serialization process. refs PECL #5217 2005-09-10 17:47:20 +00:00
foobar
23e671a51e - Bumber up year 2005-08-03 14:08:58 +00:00
Dmitry Stogov
e4b1fb6455 Recursion protection 2005-07-21 07:18:02 +00:00
Stanislav Malyshev
62d4d8b8d2 fix handling of non-PHP classes (John Coggeshall) 2005-06-28 09:46:30 +00:00
Dmitry Stogov
415ec46927 Fixed incorrect usage of zend_mangle_property_name() (valgrind errors) 2005-06-08 15:48:12 +00:00
Dmitry Stogov
9383e1b858 Fixed bug #30791 (magic methods (__sleep/__wakeup/__toString) call __call if object is overloaded) 2005-06-01 11:03:58 +00:00
Stanislav Malyshev
db3fdce304 Custom object serializer infrastructure - PHP implementation
# The detailed announce on the list will follow
2005-02-23 11:17:52 +00:00
Derick Rethans
13c2cbb515 - MF43: Fixed bug #31072 (var_export() does not output an array element with an
empty string key). (Derick)
2004-12-17 14:40:39 +00:00
Marcus Boerger
f0c9f998d3 speling 2004-10-08 19:02:00 +00:00
Marcus Boerger
91af7f394f - Add some checks when unserializing data to prevent buffer overflows 2004-09-05 16:29:05 +00:00
Marcus Boerger
72000ecda9 Fix memleak in serialize 2004-09-02 18:28:47 +00:00
Ilia Alshanetsky
9996b5f731 Fixed leak when serializing protected & private properties. 2004-08-29 17:16:20 +00:00
Andrey Hristov
dd5538566e fix for bug 26737 : private & protected member variables not serialized
when user defined __sleep() is declared. Additionally E_NOTICE is
being thrown if __sleep() returns a non-existing member variable name
2004-08-21 13:49:19 +00:00
Marcus Boerger
c5b9577df8 Fix TSRM build 2004-07-04 11:14:17 +00:00
Moriyoshi Koizumi
a92af73136 - Bugfix #28325 (circular reference serialisation). 2004-07-03 16:10:28 +00:00
Andrey Hristov
19d0283ce8 for now removing ":public". Waiting for a decision? ":public" will require
quite a lot of phpt files changes.
2004-05-20 21:15:42 +00:00
Andrey Hristov
aafb2b1581 var_dump() now shows private and protected member variables.
Not BC is that since now the public variables are explicitly shown as public
Example :

class a{ protected $a=1; private $b=2;var $c=3;} $a=new a(); var_dump($a);

object(a)#1 (3) {
  ["a:protected"]=>
  int(1)
  ["b:private"]=>
  int(2)
  ["c:public"]=>
  int(3)
}
2004-05-20 17:46:20 +00:00
Dmitry Stogov
deb84befae BUG #27469 was fixed (serialize() objects of incomplete class) 2004-03-18 16:54:36 +00:00
Ard Biesheuvel
b303ba089c More wordsize fixes 2004-03-08 23:11:45 +00:00
Ilia Alshanetsky
6112260738 Fixed compiler warnings. 2004-03-08 03:06:56 +00:00
Ard Biesheuvel
81f05c18f5 Wordsize fixes 2004-02-25 20:16:27 +00:00
Stanislav Malyshev
794975d97f ce is not used, don't get it 2004-02-16 11:21:31 +00:00
Stanislav Malyshev
1c433049ca fix serialization 2004-02-05 09:07:46 +00:00
Stanislav Malyshev
3fd027c5ac fix bug #27120 and bug #25975 - preserve is_ref when bound
objects are serialized
2004-02-03 14:12:59 +00:00
Andi Gutmans
dbeb4158d2 - A belated happy holidays and PHP 5 2004-01-08 08:18:22 +00:00
Derick Rethans
6923a16c26 - Fixed var_export() to show public, protected and private modifiers properly.
- Exported (un)mangle_property_name.
2004-01-03 13:51:02 +00:00
Derick Rethans
287834a5af - Fix typo 2003-12-28 21:56:15 +00:00
Ilia Alshanetsky
91052eb93b Fixed bug #26458 (var_dump(), var_export(), debug_zval_dump() not binary
safe for array keys).
2003-11-29 04:43:06 +00:00
Wez Furlong
28277f1d00 fix #26001; serialize crashes when accessing an overloaded
object that has no properties (NULL hashtable).
2003-11-28 15:42:58 +00:00
Moriyoshi Koizumi
bb6f3a115e Fixed bug #24394 (serializing cross-referenced objects causes segfault) 2003-11-04 16:08:10 +00:00
Moriyoshi Koizumi
ed40a56c6c Oops.. 2003-10-08 01:51:32 +00:00
Moriyoshi Koizumi
f4595d18af Better fix for bug #25758 2003-10-08 01:49:31 +00:00
Ilia Alshanetsky
6f8b8ade45 Fixed bug #25758 (var_export does not escape ' & \ inside array keys) 2003-10-08 01:16:44 +00:00
Sascha Schumann
6a7dde29e7 kill warnings 2003-08-28 16:28:33 +00:00
Ilia Alshanetsky
ed40ae2650 emalloc -> safe_emalloc 2003-08-11 23:16:54 +00:00
Ilia Alshanetsky
4320c6994f Fixed bug #21957 (serialize() mangles objects with __sleep). 2003-08-11 03:22:24 +00:00
Stanislav Malyshev
d113d32314 Don't try to __sleep incomplete classes 2003-08-05 09:19:38 +00:00
James Cox
f68c7ff249 updating license information in the headers. 2003-06-10 20:04:29 +00:00
Ilia Alshanetsky
b20df54af7 Make serialize precision a configurable option. 2003-05-08 01:23:21 +00:00
Ilia Alshanetsky
7f404846ad s/g/G/ 2003-05-05 22:21:29 +00:00
Ilia Alshanetsky
88bafcb7a5 Safer implementation.
Thanks Marcus.
2003-05-04 19:09:54 +00:00
Ilia Alshanetsky
75c01dd66b Fixed bug #23298 (serialize cuts off floats & doubles) 2003-05-04 18:41:02 +00:00
Derick Rethans
9ab3ad2963 - Commit the .c file too... 2003-04-28 18:52:59 +00:00
Moriyoshi Koizumi
cf620ddfdb Unified all those redundant printf's 2003-04-21 18:00:41 +00:00
Stanislav Malyshev
5a904d6ea8 Update to latest inteface change for get_class_name 2003-04-21 17:03:29 +00:00
Moriyoshi Koizumi
47e40e1b98 Improved var_dump() and debug_zval_dump() so they also show the
namespace of the given object.
2003-03-29 21:29:22 +00:00
Andrei Zmievski
b1546a1775 Print the object handle (it's useful). 2003-03-10 15:13:32 +00:00
Wez Furlong
84f83e8559 Don't assume that objects have class entries (in the ZE1 sense) when
determining the class name.
Additionally, don't assume that objects have a properties hash either.
2003-02-01 03:52:31 +00:00
Sascha Schumann
bea6ff5183 Unbreak $Id tag 2003-01-31 16:24:12 +00:00
Andrey Hristov
309ef518fc Renamed get_memory_usage() to memory_get_usage() (per Andi's advice)
This doesn't break any BC.
2003-01-18 15:03:01 +00:00
Andrey Hristov
7866f02260 added function get_memory_usage(). available only when PHP is compiled
with --enable-memory-limit
2003-01-14 18:26:47 +00:00
Stanislav Malyshev
bcc1e5a74e remove unneeded var 2003-01-12 13:50:17 +00:00
Sebastian Bergmann
b506f5c8f8 Bump year. 2002-12-31 16:08:15 +00:00
Marcus Boerger
49a99a98f4 -php_error -> php_error_docref
-removed some cases where emalloc result was tested
2002-12-05 20:59:49 +00:00
Derick Rethans
e06550f853 - Fix problem with var_export when objects with numeric indexes were
exported. We now skip those, as there is no way to export valid code for
  it.
2002-10-11 13:49:20 +00:00
Zeev Suraski
df55f35798 Revert the implicit_flush mess.
Do not revert it again under any circumstances!

Yasuo/anybody else - if there are issues with implicit_flush, please inform
me and I will fix them.
2002-10-06 12:02:53 +00:00
Yasuo Ohgaki
39b0eb9b22 Fixed broken code by Derick.
ob_implicit_flush() and ob_flush_all() are stopped working.
var_dump() and hightlisht_string() outputs buffer contents wrongly
with ob_implicit_flush().

Everyone should be happy now.
It was only OG(implicit_flush) interpretation issue after all.
2002-10-03 13:32:01 +00:00
Derick Rethans
9b517c4b93 - Revert changed to implicit_flush behavior. The new behavior was not
intended in the first place.
2002-10-03 10:35:33 +00:00
Yasuo Ohgaki
1731767272 Prevent unwanted fluhsing. 2002-10-03 08:54:45 +00:00
Andi Gutmans
1f58a8f087 - No idea why this wasn't crashing before. 2002-06-26 07:36:01 +00:00
Derick Rethans
ba5257a2ec - Fix for bug #16065 2002-06-18 11:09:21 +00:00
Stanislav Malyshev
11df2122df Add comments for the fix 2002-04-29 16:02:41 +00:00
Stanislav Malyshev
91a78e2974 Fix here too 2002-04-29 16:02:10 +00:00
Stanislav Malyshev
aa10ac9a64 Yet another serialization fix - for incomplete class 2002-04-29 15:44:30 +00:00
Stanislav Malyshev
a57381e3bd Fix couple of nasty serializer bugs:
a) When array unserializer encounters less data than it expects (like:
a:1:{}) it crashes. I don't understand exactly why it does, but the fact
is it does. So now it should catch "}" and bail out.
b) When array/object data are serialized, the count is written by hash
count. However, it can be that in-loop check fails and less data than
expected will then be written into the array. Which, due to a), would
crash on unserialize. So now it will write empty entries in place of
entries it cannot serialize (the other choice would be make two passes on
the data, which I don't like).
2002-04-28 16:56:33 +00:00
Sascha Schumann
d30fc27e5a simplify and improve speed of smart_str_print_long.
also add a variant for unsigned numbers.
2002-04-21 01:17:49 +00:00