Commit Graph

145 Commits

Author SHA1 Message Date
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
Thies C. Arntzen
3550d75d0f fix #12793 - serialize will now spit a notice if the return value of __sleep is
bogus.
2002-03-19 11:25:21 +00:00
Wez Furlong
1cc6a8e998 it's late; no more commits from me tonight... 2002-03-15 02:06:08 +00:00
Wez Furlong
0454ad4de8 should have diffed first... 2002-03-15 02:00:55 +00:00
Wez Furlong
ae9db4e440 fix for ZE2 compile 2002-03-15 01:58:00 +00:00
Derick Rethans
7935e73749 - Fix bug #16078 2002-03-14 18:41:35 +00:00
Wez Furlong
93ad205756 fix buglet 2002-03-14 14:05:13 +00:00
Yasuo Ohgaki
dcd86d154e Fixed var_dump() crash when there is recursion.
# Since I said it's easy to fix :)
2002-03-14 09:36:13 +00:00
Yasuo Ohgaki
82a8d372e5 Added ob_get_status() to get array of buffers and it's status.
(DO NOT document this function yet)

Fixed crash bug with ob_end_*() function. ob_end_*() will not delete
buffers that may not be deleted.

php_start_ob_buffer() and php_ob_set_internal_handler() takes parameter for
if the buffer created may be deleted or not.

Added 3rd parameter "bool erase" to ob_start(). If FALSE, buffer may not be
deleted until script finshes.

Changed ob_*() function that have void return type to bool. All ob_*()
functions return TRUE for success, FALSE for failure.

@ - Added ob_get_status() to get array of buffers and it's status. (Yasuo)
@ - Fixed crash bug with ob_end_*() function. ob_end_*() will not delete
@   buffers that may not be deleted. (Yasuo)
@ - Added 3rd parameter "bool erase" to ob_start(). If FALSE, buffer may not be
@   deleted until script finshes. (Yasuo)
@ - Changed ob_*() function that have void return type to bool. All ob_*()
@   functions return TRUE for success, FALSE for failure. (Yasuo)
2002-03-01 03:05:50 +00:00
Derick Rethans
27c4648010 - Make it a boolean 2002-02-28 16:00:26 +00:00
Derick Rethans
b5a0fd24a1 - Fix the fix.. no need to escape " in single quotes 2002-02-24 14:07:10 +00:00
Derick Rethans
a4946ca375 - Add slashes around string output 2002-02-24 13:26:43 +00:00
Jason Greene
150d339231 Renamed zval_debug_dump() to debug_zval_dump() 2002-02-10 17:38:15 +00:00
Jason Greene
91ac18bc66 @Added zval_debug_dump which works similar to var_dump yet displays extra
internal information such as refcounts, and the true type names (Jason)
2002-02-10 06:52:35 +00:00
Derick Rethans
f5f4a5cf37 - TSRMLS here and there, it's all about the Windows flair 2001-12-15 14:55:18 +00:00
Derick Rethans
143df7de6b - Added a second parameter to var_export which makes the function return
the variable representation in a string.
2001-12-15 14:45:59 +00:00
Sebastian Bergmann
38933514e1 Update headers. 2001-12-11 15:32:16 +00:00
Derick Rethans
a7b9d5590b - Remove debug code 2001-12-08 23:46:19 +00:00
Derick Rethans
3cb1db985e - Added var_export, which shows a representation of a variable, much like
var_dump, but in such a way you can use it as PHP code.
@- Added var_export, which shows a representation of a variable, much like
@  var_dump, but in such a way you can use it as PHP code. (Derick)
2001-12-08 23:44:34 +00:00
Thies C. Arntzen
0fd809a770 improve last patch:
non existant object variables are now serialized as NULL, this saves us from
buffering the serialized data.
2001-12-01 15:17:50 +00:00
Thies C. Arntzen
7ff5198c53 serialized data would be incoorect if __sleep() returned a variable-name
which is non-existant in the object.
submitted by: Bernd Roemer <berndr@bonn.edu>
2001-12-01 15:06:37 +00:00
Sascha Schumann
f341f630d3 Rewrite of unserializer which should be more maintainable and extensible.
Changes pass `make test´ and a couple of custom tests.

Enjoy.
2001-11-10 21:18:34 +00:00
Jeroen van Wolffelaar
c033288573 Back-substitute for Z_* macro's. If it breaks some extension (the script isn't optimal, it parses for example var->zval.value incorrect) please let me know. 2001-09-25 21:58:48 +00:00
Derick Rethans
78747bd2df - Don't wrap lines... this is annoying while coding. 2001-09-09 13:29:31 +00:00
Zeev Suraski
e140b35b04 API update 2001-08-21 12:57:53 +00:00
Sterling Hughes
06aa7a4d19 Cleanup of var_dump() with correct macro's, k&r indent, and removal of a
pair of unnecessary { }
2001-08-17 07:50:15 +00:00
Andi Gutmans
4580df1080 - This code looks OK so remove FIXME comment 2001-08-14 17:43:39 +00:00
Zeev Suraski
c0404f4631 Whitespace 2001-08-11 17:03:37 +00:00
Thies C. Arntzen
a35df189b8 we can no longer register internal-classes once the script is started.
therefore the "incomplete class" is now registered at MINIT time.
2001-08-06 13:36:08 +00:00
Sascha Schumann
a19563c8dc more tsrm cleanup 2001-08-05 16:52:29 +00:00
Sascha Schumann
373b3e101e more tsrm cleanup -- output.c is not doing any fetches anymore 2001-08-05 15:55:43 +00:00
Thies C. Arntzen
dca5f8dce4 fix serialize:
- keys no longer have a trailing \0
- no leak on calling __wakeup (also saved 2* malloc & free)
- serializing objects that implement __sleep() works again
- make test works again:-)
2001-08-04 17:29:54 +00:00
Sebastian Bergmann
724b4d409c Eliminate TSRMLS_FETCH() call. 2001-08-04 05:37:11 +00:00
Sebastian Bergmann
ea79632b29 Fix Win32 (and maybe other ZTS) builds. 2001-08-04 05:22:55 +00:00
Sascha Schumann
c947a0739e Clean up the serializer by modularizing some of its code. That also
enables us to serialize hash indices without creating zvals for them.
Due to its nature, this patch also includes some whitespace changes.
2001-08-04 03:30:38 +00:00
Sascha Schumann
723bbcbea0 Do the nul'ifiying of php_var_serialize's result at the right place 2001-08-03 11:00:16 +00:00
Sascha Schumann
3459f05a07 NUL-terminate string 2001-08-03 09:35:33 +00:00
Sascha Schumann
4dfa91543c Convert serializer to smart_str.. avoids lots of sprintf's and
copying of data.
2001-08-03 07:25:27 +00:00
Zeev Suraski
c43806f415 Zend compatibility patch 2001-07-30 08:24:42 +00:00
Zeev Suraski
7b1c400631 More TSRMLS_FETCH annihilation (Zend compatibility patch) 2001-07-30 04:58:07 +00:00
Andi Gutmans
b99a590be3 - More object macros 2001-07-29 08:14:29 +00:00
Zeev Suraski
d87cc976e1 Redesigned thread safety mechanism - nua nua 2001-07-28 11:36:37 +00:00
Zeev Suraski
fe6f8712a4 - Get rid of ELS_*(), and use TSRMLS_*() instead.
- Move to the new ts_allocate_id() API
This patch is *bound* to break some files, as I must have had typos somewhere.
If you use any uncommon extension, please try to build it...
2001-07-27 10:16:41 +00:00
Zeev Suraski
2edcf835ed Update cast 2001-07-15 22:49:25 +00:00