Dmitry Stogov
bea2519575
Fixed buffer overflow. (Rob)
2006-12-01 14:57:44 +00:00
Antony Dovgal
0e647693df
fix leak in zend_register_functions()
...
this is very odd, but Zend MM said nothing about it..
2006-11-20 22:08:27 +00:00
Dmitry Stogov
57d22421db
Unicode support.
...
Now the real UG(unicode) value is available during MINIT calls.
2006-11-17 10:48:53 +00:00
Andrei Zmievski
75c272440e
Turn doc comments into zstr strings with corresponding adjustments.
2006-10-27 21:22:05 +00:00
Andrei Zmievski
1e1f3efb02
Fix thread safety.
2006-10-17 22:15:19 +00:00
Andrei Zmievski
2602e49e65
Implement add_utf8_property_* API.
2006-10-17 17:56:42 +00:00
Andrei Zmievski
83e0dbb3d2
- Add an extra parameter to the cast_object handler that can be used by
...
various types as needed.
- Use that parameter to pass a specific converter for
IS_UNICODE/IS_STRING types.
2006-10-13 14:52:19 +00:00
Andrei Zmievski
97d0372249
Extend zend_fcall_info_args functions. (Patch from Mike Wallner)
2006-10-11 18:37:31 +00:00
Andrei Zmievski
d86524570f
Hash functions for UTF-8 keys.
2006-10-07 17:34:19 +00:00
Dmitry Stogov
e8ddcf1077
Speedup array/HashTable copying. (Matt W)
2006-10-03 11:10:54 +00:00
Sara Golemon
3b24a795a6
Add missing function protos
2006-09-21 23:58:06 +00:00
Andrei Zmievski
7ff8b9b090
Bug fixes for substr_replace().
2006-09-20 20:30:19 +00:00
Dmitry Stogov
128548a5c0
Disabled autoconversion of hash keys (from string to unicode) for PHP arrays
2006-09-19 10:38:31 +00:00
Dmitry Stogov
70ad4607d7
ZTS fix
2006-09-19 07:39:25 +00:00
Andrei Zmievski
81b83f327b
More work on Unicode support in PCRE. When UG(unicode) is on, all
...
strings passed to PCRE have to be IS_UNICODE or IS_STRING in UTF-8
encoding. Failure to do so will result in unpredictable results.
2006-09-18 17:59:10 +00:00
Dmitry Stogov
9b222e6f07
fix
2006-09-11 17:18:47 +00:00
Andrei Zmievski
21bc25e025
Add a couple more UTF-8 functions.
2006-09-11 16:32:02 +00:00
Andrei Zmievski
11ca9006a2
Add APIs for UTF-8 strings (common with XML, PCRE, etc)
2006-08-28 17:14:49 +00:00
Andrei Zmievski
2701f53af6
add_next_index_zstr[l]()
2006-08-14 21:05:22 +00:00
Andrei Zmievski
180e98f5cb
Typo.
2006-08-14 20:45:32 +00:00
Andrei Zmievski
ea7ab72fe7
Set T_arg_type to default string type if we were not able to determine
...
it from the args.
2006-08-14 20:40:26 +00:00
Andrei Zmievski
a90da20623
Make params API sound less like Raymond Babbitt.
2006-08-09 17:37:29 +00:00
Andrei Zmievski
9320e167f2
Adjust zend_get_unified_string_type() to give correct types.
2006-08-08 17:36:55 +00:00
Andrei Zmievski
dda059708f
Add add_assoc_zstr_ex() and related.
2006-08-04 21:05:59 +00:00
Andrei Zmievski
aa398bf8ce
One fewer walks needed.
2006-08-04 18:02:20 +00:00
Andrei Zmievski
2bfe0a8cbd
Scan through all the modifiers at once, setting flags.
2006-08-04 17:02:17 +00:00
Andrei Zmievski
fd39d28d17
Fix '&' handling. (patch by Rob R)
2006-08-04 16:58:29 +00:00
Andrei Zmievski
433c40c3d2
Add '&' modifier (for 's' type) that will apply the specified converter
...
during conversion of Unicode strings.
2006-08-02 17:36:28 +00:00
Derick Rethans
0d1957e7dc
- MFB: Fixed typo
2006-07-25 06:50:26 +00:00
foobar
bca80ac698
- Fixed bug #38183 (disable_classes=Foobar causes disabled class to be called Foo)
2006-07-22 15:39:22 +00:00
Dmitry Stogov
881258ad6e
Fixed wrong "type" argument to read_property() handler
2006-07-21 08:39:43 +00:00
Marcus Boerger
8619c361cc
- Add new unicode functions: add_u_assoc_*[_ex]() which allow to add values
...
using a unicode key.
2006-07-20 21:16:08 +00:00
Andrei Zmievski
0e05886a2e
Fix usage of 'return_null' option in parameter parsing.
2006-07-19 18:21:04 +00:00
Andrei Zmievski
80839710f1
Make 't' and 'T' use zstr for storage type.
2006-07-19 17:51:49 +00:00
Andrei Zmievski
f45c16cb3c
Add '+' varargs specifier that requires at least one arg.
2006-07-19 17:38:47 +00:00
Andrei Zmievski
4bf31abbf4
Initialize some vars.
2006-07-19 01:51:20 +00:00
Andrei Zmievski
bbd3cd2743
Implement varargs parameter parsing. See README for examples.
2006-07-18 22:07:20 +00:00
Andrei Zmievski
0667864631
Callable checks and class fetching and lookup should support identifer
...
normalization now. (Marcus, Andrei)
2006-07-18 17:52:45 +00:00
Andrei Zmievski
fdf280b41b
- Upgrade usort() to support Unicode (including valid Unicode callbacks).
...
- Make usort() use 'f' specifier for function call info/cache.
2006-07-17 20:52:12 +00:00
Andrei Zmievski
2fbc36496f
- Let the caller output a warning instead of having
...
zend_get_unified_string_type() do it.
- Mark a few more functions are Unicode compatible.
2006-07-13 21:27:48 +00:00
Antony Dovgal
1fb6a441d7
fix argument parsing utilities
...
test before commit?
2006-07-12 10:13:13 +00:00
Sara Golemon
f541962338
Fix typo/Syntax error
2006-07-12 04:20:02 +00:00
Andrei Zmievski
a1fcfe3693
Remove unused 'y' specifier.
2006-07-11 22:53:10 +00:00
Andrei Zmievski
b41169d4e7
Rename to a more explanatory macro.
2006-07-11 16:59:42 +00:00
Andrei Zmievski
637f602822
Optimize zero-arg case for parameter parsing. No more need for manual
...
checks.
2006-07-10 23:06:33 +00:00
Antony Dovgal
59e16e52de
init variables
2006-06-20 13:28:02 +00:00
Dmitry Stogov
2cbde06400
Added automatic module globals management.
2006-06-13 13:11:42 +00:00
Marcus Boerger
f2a8d8cb83
- Fix issue with interfaces being inherited multiple times
2006-06-07 09:20:02 +00:00
Marcus Boerger
45c1713762
- Fix function flag check
2006-06-04 10:23:25 +00:00
Marcus Boerger
5925a26275
- Take care of refcounting in zend_fcall_info_*() functions
...
- Add docu
# I know it is unpopular to add docu here but i think we should add more
2006-05-27 19:40:06 +00:00
Marcus Boerger
f93bf1007a
- WS
2006-05-27 19:04:16 +00:00
Marcus Boerger
9265545992
- Fix bug #37212 (Access to protected property of common base class)
...
By adding "zend_class_entry *ce" to struct zend_property_info;
# Besides closing the bug this patch allows to optimize a bunch of
# property handling optimizations. I need to find out what all can be
# optimized. All other tests relevant to class handling still PASS.
2006-05-27 02:12:43 +00:00
Sara Golemon
a228b7f675
Fix ZTS build, call with TSRMLS_CC not DC
2006-05-26 04:22:46 +00:00
Marcus Boerger
9114bc25c3
- Ease writing functions that deal with php function 'pointers'
2006-05-25 22:20:13 +00:00
Antony Dovgal
34126e4a64
MFB: fix error messages when converting objects to other types
2006-05-25 10:34:01 +00:00
Marcus Boerger
30bc5adf3b
- Handle NULL in C argument parsing correct
2006-05-23 22:21:52 +00:00
Marcus Boerger
223dce98a5
- Improve error messages (missing unicode todo)
2006-05-21 12:39:03 +00:00
Marcus Boerger
601523f22d
- Support __tostring() in argument parsing
2006-05-13 10:18:12 +00:00
Sara Golemon
c581700782
Fix ZTS build
2006-04-18 18:57:13 +00:00
Antony Dovgal
a264a5aca3
binary strings exist only in unicode mode
2006-04-18 17:10:30 +00:00
Andrei Zmievski
29552a6472
Some functions may want to accept only Unicode or binary strings,
...
without having auto-conversion from the other string type. Add 'U' and
'S' specifiers for this. Also, remove traces of 'native' strings.
2006-03-27 02:52:06 +00:00
Marcus Boerger
123df34265
- Initialize callable_name if requested
2006-03-23 13:09:28 +00:00
Dmitry Stogov
53e1f2adfb
Optimization of module unloading (temporary modules can be only in the end)
2006-03-17 08:34:34 +00:00
Dmitry Stogov
7c0e534157
Dropped zend.ze1_compatibility_mode
2006-03-16 10:33:23 +00:00
Marcus Boerger
fd2b76d505
- Add missing function for completeness
2006-03-05 16:09:45 +00:00
Marcus Boerger
03be54de37
- Make unicode handling portable (noted by andrei)
...
# Actually we should provide much more such unicode strings that we often
# use like 'parent', 'self' and so on.
2006-03-03 23:20:29 +00:00
Marcus Boerger
5d77a462f6
- As expected (but told otherwise) unicode strings indeed need to be
...
terminated by two \0.
2006-03-03 22:37:47 +00:00
Marcus Boerger
a3741cf6bc
- Constants need to be updated too (when updating class constants)
2006-03-01 16:15:15 +00:00
Dmitry Stogov
e3b7f3fd0d
Unicode support: MS Visual C compatibility
2006-02-26 11:57:14 +00:00
Marcus Boerger
8a4c8e8d47
- Add macros to mark functions/alias functions as deprecated
...
(mentioned by Sara and obviously neccessary)
- Fix function/method flag error detection logic
2006-02-24 13:29:54 +00:00
Dmitry Stogov
0342d9f519
Unicode support
2006-02-22 12:02:44 +00:00
Dmitry Stogov
19ebeed0d8
Unicode support: fixed call_user_func(array($this, "self::foo"))
...
Made check for "self/parent" before calling __autoload()
2006-02-22 08:54:02 +00:00
Dmitry Stogov
0f1209ab3d
Portable unicode string API:
...
- use the same type (int) for zval.value.usr.len and zval.value.str.len
- use union "zstr" as char*/UChar* mixture instead of void*
- Z_UNISTR() and Z_UNILEN() no longer check for Z_TYPE()
- nuke int32_t from ZE (not finisned)
2006-02-21 20:12:43 +00:00
Dmitry Stogov
2e5d0a3a9d
WS
2006-02-21 08:00:39 +00:00
Dmitry Stogov
b424a32610
Preparation for portable string API (use macroses to access zval).
2006-02-20 19:03:43 +00:00
Marcus Boerger
ffd43034b0
- Interfaces may have static methods to enforce their existance in
...
implementing classes
2006-02-19 11:55:11 +00:00
Marcus Boerger
89f57ea951
- Static functions cannot be abstract
2006-02-19 11:42:30 +00:00
Marcus Boerger
5a4cfaf96a
- Fix method flag handling
2006-02-19 10:39:48 +00:00
Dmitry Stogov
09ca61c125
Made server wide switch for unicode on/off (according to PDM).
2006-02-13 10:23:59 +00:00
Antony Dovgal
c888a7f8af
init variables (continue making GCC happy)
2006-02-06 20:36:51 +00:00
Antony Dovgal
9c8bc2043c
improve CS
2006-01-24 23:58:54 +00:00
Marcus Boerger
35e632257e
- Add fast access to HashTable
2006-01-24 19:48:11 +00:00
Dmitry Stogov
227295a4f1
Unicode stuff is changed according to decision maden on PDM.
...
Now IS_BINRAY data type is removed and IS_STRING starts behave as IS_BINARY in unicode mode. IS_STRING is incompatible with IS_UNICODE, so ALL functions should be improved to support unicode mode.
2006-01-17 12:18:53 +00:00
Marcus Boerger
2fe859febb
- Fixed bug #36011
2006-01-14 15:22:19 +00:00
Marcus Boerger
416d5f2c0c
- MFB missing E_STRICT
2006-01-07 21:16:02 +00:00
Marcus Boerger
ddd5d80194
- MFB zend_is_callable() fixes
...
# Now to the missing part in zend_call_function()
2006-01-07 20:43:33 +00:00
Andi Gutmans
5de7cc3194
- Update copyright notices to 2006
2006-01-04 23:54:12 +00:00
Dmitry Stogov
feaa2501d0
Fixed bug #34729 (Crash in ZTS mode under Apache)
2005-12-01 11:49:51 +00:00
Dmitry Stogov
310ab5b4be
Additional fix for fix #35536
2005-11-23 13:30:18 +00:00
Antony Dovgal
9457dc348c
forgotten part of the fix
2005-11-23 11:57:43 +00:00
Antony Dovgal
9e9a55f9ac
MF51: fix #35336 (crash on PDO::FETCH_CLASS + __set())
2005-11-23 11:55:46 +00:00
Ilia Alshanetsky
b05d189cc0
MFB51: Allow zend_parse_parameters to handle non-well formed integers, but
...
raise E_NOTICE in the process.
2005-11-17 00:20:31 +00:00
Marcus Boerger
00d5138e93
- Allow parameter parsing implementation raise an error early where more
...
information is available. And add ability to prevent double errors by
returning "".
- Implement parameter parsing C which checks for a class name, if the value
on input is not NULL then the pointer must be the zend_class_entry of the
required base class.
# Do the KISS approach, looking at the code it isn't that easy does it?
2005-11-01 16:53:29 +00:00
Dmitry Stogov
05bd788e23
Fixed bug #34879 (str_replace, array_map corrupt negative array indexes)
2005-10-28 13:48:15 +00:00
Ilia Alshanetsky
cbeef6084b
MFB51: Fixed memory leak on error
2005-10-27 14:14:33 +00:00
Marcus Boerger
ff5ae1d0de
- Make the code a bit clearer
2005-10-25 23:11:26 +00:00
Marcus Boerger
c72d91afd7
- Make zend_is_callable_ex() return the class netry if available
2005-10-25 19:38:09 +00:00
Dmitry Stogov
f27aedcce2
Cleanup
2005-10-06 08:18:20 +00:00
Marcus Boerger
7c083fcc07
- Have __toString() be called if available in all places an object is used
...
as a string.
#
# Note that "Object #<id>" is no longer afallback for debugging purpose use
# var_dump, which was made for debugging. If you used this to grab the id
# of an object you can never rely on this. For object storage look at SPL's
# ObjectStorage class.
#
# Note the signature change in the cast handler:
#
# int (*cast_t)(zval *readobj, zval *writeobj, int type, int should_free TSRMLS_DC);
# int (*cast_t)(zval *readobj, zval *retval, int type TSRMLS_DC);
2005-10-05 19:02:27 +00:00
Marcus Boerger
ebcafe58d3
- Fix ZTS Build
2005-10-03 19:13:13 +00:00