Dmitry Stogov
29ed52ffa4
New memory manager
2006-07-18 09:06:33 +00:00
Antony Dovgal
7f9a43653c
fix logic
2006-07-18 09:00:10 +00:00
Antony Dovgal
7a089a43af
MFH: fix DVAL_TO_LVAL() on AIX with old gcc
2006-07-18 08:17:28 +00:00
Marcus Boerger
c514ee0c9b
- MFH Fix issue with comparing objects with objects
2006-07-09 18:03:42 +00:00
Marcus Boerger
fa57959f47
- MFH:
...
. Fix comparision edgecases involving objects (Tony, Marcus)
. Use ZVAL_LONG() where appropriate
2006-07-09 16:58:05 +00:00
Zeev Suraski
51d495850a
Restore ZE1 compatibility mode (Zend Engine part - the modules patches
...
will follow later today)
2006-06-05 13:58:52 +00:00
Antony Dovgal
9dd24c6d87
fix error messages when converting objects to other types
...
add new function
MFB will follow soon
2006-05-25 10:01:06 +00:00
Marcus Boerger
637a40423c
- MFH as discussed
...
. zend_exception_get_default() -> zend_exception_get_default(TSRMLS_D)
. zend_get_error_exception() -> zend_get_error_exception(TSRMLS_D)
. added E_RECOVERABLE_ERROR
. added ZEND_TOSTRING_FUNC_NAME
. added __tostring function cache to zend_class_entry
. added ZEND_NAMED_ME
. modified ZEND_ME_MAPPING to support method flags
. added ZEND_MN
. method entries now use prefix "zim_" instead of "zif_"
. drop EG(ze1_compatibility_mode)
. changed cast handler, now without (int should_free):
typedef int (*zend_object_cast_t)(zval *readobj, zval *retval, int type TSRMLS_DC);
. changed get_iterator, now receives whether value is by ref:
zend_object_iterator *(*get_iterator)(zend_class_entry *ce, zval *object, int by_ref TSRMLS_DC);
. added zend_objects_store_add_ref_by_handle
. added zend_objects_store_del_ref_by_handle
. convert_to_explicit_type(pzv, type)
2006-05-09 23:53:23 +00:00
Marcus Boerger
647eafcb5d
- MFH
2006-02-05 17:07:40 +00:00
Andi Gutmans
61e93ccfe8
- Update copyright notices to 2006
2006-01-04 23:53:05 +00:00
Marcus Boerger
882a9effe6
- Enforce termination to prevent possible SEGVs
2005-12-12 19:10:12 +00:00
Dmitry Stogov
9d1f2f30d3
Fixed bug #34199 (if($obj)/if(!$obj) inconsistency)
2005-09-12 11:48:57 +00:00
Dmitry Stogov
c10d6d3c89
Fixed bug #33999 (object remains object when cast to int)
2005-08-05 09:02:14 +00:00
foobar
916815b779
Bump up the year
2005-08-03 13:30:58 +00:00
Dmitry Stogov
747074f988
Reverted wrong fix for bug #30572 .
...
Seems the bug was already fixed in other way.
But reverted patch produced a lot of valgrind errors, because IS_TMP_VAR operands don't initialize refcount.
2005-05-31 11:16:51 +00:00
Marcus Boerger
d100328de8
- Fix memory corruption found by rob
2005-04-08 14:33:00 +00:00
Derick Rethans
d91a531d2e
- Added "G" modifier to ini setting number format.
2004-12-13 09:09:06 +00:00
Derick Rethans
ebca90f075
- MFH: Revert Joe's work around a bug in GCC patch as it breaks too many things.
2004-11-29 09:32:15 +00:00
Derick Rethans
e612284ea4
- Fixed bug #30630 : Added a BSD based strtod function that is
...
locale-independent.
2004-11-03 23:13:32 +00:00
Andi Gutmans
b86cdbbddb
- For Ilia:
...
- MFH: Fixed bug #30572 (crash when comparing SimpleXML attribute to a boolean).
- Hope this works well. I will MFH tomorrow if no one complains.
2004-10-29 00:55:11 +00:00
Andi Gutmans
a4dff681c8
- Revert Fixed bug #30228 (crash when comparing SimpleXML attribute to a boolean).
...
- Need to discuss where the real problem is.
2004-10-27 18:15:03 +00:00
Ilia Alshanetsky
bb928e70a7
Fixed bug #30228 (crash when comparing SimpleXML attribute to a boolean).
2004-10-26 22:38:34 +00:00
Andi Gutmans
abd42847b1
- If object handles are equal then save the comparison of properties in
...
- the == operator.
2004-10-20 17:57:28 +00:00
Andi Gutmans
1a4bfd6561
- Small improvement to DVAL_TO_ZVAL macro
2004-09-30 18:36:03 +00:00
Derick Rethans
4bae5cb4d0
- MFB: Added the sorting flag SORT_LOCALE_STRING to the sort() functions which
...
makes them sort based on the current locale. (Derick)
2004-09-11 14:22:35 +00:00
Andi Gutmans
3e201ac281
- Resolve undefined behavior (joe at redhat)
2004-09-11 00:23:20 +00:00
Andi Gutmans
56f8195fe5
- Nuke empty_string. It is a reminanent from the time where RETURN_FALSE()
...
used to return "" and not bool(false). It's not worth keeping it because
STR_FREE() and zval_dtor() always have to check for it and it slows down
the general case. In addition, it seems that empty_string has been abused
quite a lot, and was used not only for setting zval's but generally in
PHP code instead of "", which wasn't the intention. Last but not least,
nuking empty_string should improve stability as I doubt every place
correctly checked if they are not mistakenly erealloc()'ing it or
calling efree() on it.
NOTE: Some code is probably broken. Each extension maintainer should
check and see that my changes are OK. Also, I haven't had time to touch
PECL yet. Will try and do it tomorrow.
2004-07-19 07:19:50 +00:00
Zeev Suraski
428e722d88
- Fix comparison of objects
...
- Clarify convert_object_to_type()
2004-05-10 14:56:21 +00:00
Andi Gutmans
3317070941
- Fix comparison of two objects in non-compatibility mode.
2004-05-02 15:40:46 +00:00
Andi Gutmans
911922432f
- Nuke more old junk
2004-04-03 17:01:13 +00:00
Andi Gutmans
1c7cfe739d
- Nuke code which hasn't been in use for ages.
2004-04-03 11:09:39 +00:00
Stanislav Malyshev
9091bf8e5f
centralize object-to-scalar conversion, make it work with get handler
2004-03-28 12:08:26 +00:00
Stanislav Malyshev
c331afa267
Use macros for object parts access
2004-03-28 10:44:48 +00:00
Derick Rethans
9ff10d086a
- Revert bogus commit
2004-03-24 14:28:41 +00:00
Derick Rethans
2face60bef
- Fixed NEWS
...
#- Can we *please* keep this in order?
2004-03-24 13:31:20 +00:00
Andi Gutmans
29ee03aa55
- Apply Ard's patch to support multiplication & overflow on both 32bit
...
and 64bit machines
2004-03-17 09:25:52 +00:00
Andi Gutmans
dae7093d93
- Restore E_NOTICE for longs and doubles.
2004-03-15 16:55:20 +00:00
Andi Gutmans
14d711b9bb
- Nuke E_NOTICE. This caused a notice when doing if ($obj == NULL)
2004-03-15 14:15:47 +00:00
Andi Gutmans
f11c819ddb
- Improve compatibility mode and compare objects according to property
...
- comparison (sucky but this is how PHP 4 behaved).
2004-03-14 15:56:03 +00:00
Andi Gutmans
515e28ed5b
- Support old style of converting objects to long/double/bool.
...
- This is only enabled in compatibility mode, else it calls cast_object()
- and if that is not available we return 1 (true) so that the following
- code would work:
if ($obj) {
}
2004-03-14 15:45:09 +00:00
Marcus Boerger
2917102e3f
Fix: Add return type void
2004-03-14 15:27:56 +00:00
Andi Gutmans
88de69b97c
- Support Cast operator in convert_to_* so that we support internal
...
- extensions such as SimpleXML. This is for Sterling.
2004-03-14 13:52:36 +00:00
Andi Gutmans
4f897b2f3c
- Fix memory leak in the following code (Dmitry):
...
<?php
$a = array();
$a .= "x";
?>
2004-03-14 13:14:48 +00:00
Andi Gutmans
52cd980702
- Initial commit which allows comparing overloaded objects with native
...
- types (only for internal classes and not for user-land classes).
2004-03-14 12:44:28 +00:00
Derick Rethans
e2c9926923
- Fixed bug #27354 (Modulus operator crashes PHP).
2004-02-22 20:02:26 +00:00
Zeev Suraski
f5e9ca64b1
Remove conflict
2004-01-10 12:48:04 +00:00
Zeev Suraski
a72c1ab93b
Added error mask to set_error_handler()
...
Patch by Christian Schneider <cschneid@cschneid.com>
2004-01-10 11:43:42 +00:00
foobar
ccfc46b0aa
- Happy new year and PHP 5 for rest of the files too..
...
# Should the LICENSE and Zend/LICENSE dates be updated too?
2004-01-08 17:33:29 +00:00
Moriyoshi Koizumi
033bc12d86
Fixes for POSIX compliancy.
2003-12-13 19:28:30 +00:00
foobar
a08c1e4dce
- Brought ext/bcmath to the new millennium
...
# consistency..
2003-12-09 23:59:33 +00:00
Andi Gutmans
23b231d0eb
- Revert the revert of these patches. This overloading can only be used
...
- by C extensions such as SimpleXML and *NOT* PHP code. Reasons given
- on the mailing list and problem with reentrancy inside the opcodes.
2003-12-02 21:09:24 +00:00
Andi Gutmans
a411d608fa
- Don't automatically call __toString() in convert_to_string_ex().
...
- use __toString() in your code.
- Keep the auto-case in make_printable_zval.
2003-12-01 11:47:52 +00:00
Marcus Boerger
4dba05d9cc
Add new interface ArrayAccess to use objects as Arrays
2003-11-24 20:57:54 +00:00
Moriyoshi Koizumi
138b1c7be3
Bugfix #26156 (REPLACE_ZVAL_VALUE works on uninit stack-based zvals)
2003-11-13 20:53:55 +00:00
Marcus Boerger
316854323d
Handle exceptions in casting more gracefully.
...
This fixes bug #26166
2003-11-08 14:06:08 +00:00
Ilia Alshanetsky
c258f9c8a2
Fixed bug #26148 (Print the notice before modifying variable on type
...
mismatch).
# This only crashes in ZE1, however logic dictates that it may also crash
# in ZE2 because variable does not have a correct type.
Patch by: morten-bugs dot php dot net at afdelingp dot dk
2003-11-06 20:33:47 +00:00
Marcus Boerger
71ba442768
Fallback to default behaviour for unsupported object type conversions
2003-09-18 11:50:05 +00:00
Marcus Boerger
d7fdf15a41
- Allow partial type conversion support for objects.
...
- Add support for object to string conversion from userspace by method
__toString() and add a test.
2003-09-18 11:38:33 +00:00
Zeev Suraski
36133c4d0b
Simplify / fix
2003-09-15 08:13:34 +00:00
Zeev Suraski
e0508c13bb
Commit 64-bit fixes to the standard operators
...
by Ard Biesheuvel (abies@php.net )
2003-09-14 17:37:01 +00:00
Marcus Boerger
744dd20520
Fix warnings
2003-08-17 19:14:30 +00:00
Zeev Suraski
cf90932a05
Improve infrastructure of numeric handling of elements in symbol tables.
...
When you want to work with a symbol table, and you don't know whether you
have a numeric ("string that looks like a number") or a string element in
your hands, use zend_symtable_*() functions, in place of zend_hash_*()
functions.
2003-07-22 16:06:07 +00:00
Sterling Hughes
dae3fefd10
revert back the optimization for now.
2003-06-30 01:41:15 +00:00
Sterling Hughes
f605f0b708
Very simple, but very effective optimization. Provides a signifigant speed
...
improvement to matches done via '=='. This checks that the lengths of two
strings are equal before performing a memcmp() on them.
2003-06-29 01:49:10 +00:00
James Cox
f68c7ff249
updating license information in the headers.
2003-06-10 20:04:29 +00:00
Marcus Boerger
472cc5b9f3
Faster interface inheritance & faster inheritance checks
2003-05-29 19:00:40 +00:00
Sterling Hughes
ae2bfb7880
Assume lazy consensus regarding the cast_object() patch. *Only* implemented
...
from a internals perspective. This callback has been very useful for both
ext/mono and ext/simplexml
2003-05-27 18:52:25 +00:00
Sterling Hughes
ae9106521a
move HANDLE_NUMERIC() from the hash table implementation upstream to the
...
places that actually need to use it.
2003-05-23 15:11:15 +00:00
Marcus Boerger
402f5f7a0d
Use same parameter order as strcpy()
2003-05-21 22:36:09 +00:00
Marcus Boerger
7af8eadd57
Make zend_str_tolower_copy() a copy function (like stccpy).
...
Supply a dup version (like estrdup).
Fix tolower() handling.
# Havin copy and dup allows to use the faster version even with
# memory not allocated by emalloc.
2003-05-21 21:59:40 +00:00
Sterling Hughes
5619166fe4
optimize loops. The check only exists for integers because that's the more
...
common optimization, and you actually lose performance if you check for
a double too (wierd but true).
2003-05-21 18:46:34 +00:00
Sterling Hughes
34087ad2b5
bah humbug, use the pointer based version, which turns out to be an instruction
...
faster
2003-05-20 22:31:15 +00:00
Sterling Hughes
7c7d14a413
use pointer arithmetic for the normal zend_str_tolower()
2003-05-20 20:39:58 +00:00
Sterling Hughes
3079bb1bda
make this faster and sexier
2003-05-20 19:09:33 +00:00
Sterling Hughes
a4fb3300b3
doesn't need to be register
2003-05-20 18:42:09 +00:00
Sterling Hughes
ca6ca5e2a6
optimize the lookups by avoiding a copy and then another pass
...
Naked Dancing Girls should be given to: Myself, Zeev, Marcus,
and George Schlossnagle (in no particular order)
2003-05-20 18:28:14 +00:00
Zeev Suraski
26dd8492ed
Add support for interfaces
2003-03-05 11:14:44 +00:00
foobar
333406bdc2
- Added some missing CVS $Id$ tags, headers and footers.
2003-02-01 01:49:15 +00:00
Ilia Alshanetsky
7a3c54fc36
Fixed compiler warning regarding signed/unsigned int comparisons.
2003-01-30 23:36:08 +00:00
Andi Gutmans
c073b76aac
- Change "is" to "instanceof" as it explains better what the operator means.
...
- "is_a" was also appropriate but ugly.
2003-01-14 21:29:23 +00:00
Sebastian Bergmann
2c5d4b8c23
Bump year.
2002-12-31 15:59:15 +00:00
Andi Gutmans
671fff2fde
h WHitespace
2002-11-30 11:20:25 +00:00
Ilia Alshanetsky
a8f8d9d586
Silence compile warning, ctype.h is needed for tolower() function.
2002-11-04 17:05:11 +00:00
Ilia Alshanetsky
e842ef9f4b
MFZE1 (floats & locale issue)
2002-10-12 21:15:35 +00:00
Ilia Alshanetsky
d3617c51b8
MFZE1 zend_str_tolower issue.
2002-10-09 14:21:40 +00:00
Ilia Alshanetsky
ee7b8f906d
MFZE1
2002-09-26 18:56:11 +00:00
Andi Gutmans
43139dc755
- WS - Always use "if (" and not "if("
2002-09-15 07:45:26 +00:00
Stanislav Malyshev
73cf316a53
MFZE1
2002-09-01 08:30:39 +00:00
Zeev Suraski
91f585744f
MFZE1
2002-08-19 20:58:22 +00:00
Andi Gutmans
52406cb37c
- Make new 'is' operator work with classes only and return false when
...
- the object isn't of the said class or the value isn't an object.
2002-08-08 16:32:34 +00:00
Harald Radi
99c90db11a
make win32 debug output more verbose
2002-08-07 14:47:42 +00:00
Andrei Zmievski
82c72f2799
@- Adding 'is' operator that can be used to check the type of a variable,
...
@ or its class. (Andrei)
2002-07-30 04:07:15 +00:00
Derick Rethans
c652c4b512
- MFH of the crap removal
2002-07-15 18:11:04 +00:00
Andi Gutmans
f7d9b9f1ae
- Really implement bool increment/decrement as flip-flop.
2002-07-15 04:11:13 +00:00
Derick Rethans
207845410b
MFZE1
2002-07-14 11:48:45 +00:00
Derick Rethans
dcd67e0b14
- MFZE1
2002-07-14 09:37:42 +00:00
Derick Rethans
643f21e840
- MFZE1
2002-07-14 09:29:42 +00:00
Andi Gutmans
6339bd5912
- Fix bug 15037
...
- Bump version to alpha2-dev
2002-06-29 07:35:41 +00:00
Andi Gutmans
1f6cadcd28
- WS fix
2002-06-28 15:30:03 +00:00
Harald Radi
51e797f1e3
some type cleanup work
2002-04-23 18:06:54 +00:00