Felipe Pena
9d8d84ebdf
Merge branch 'PHP-5.3' into PHP-5.4
...
* PHP-5.3:
- Value stored to var is never used
2012-08-19 14:34:42 -03:00
Felipe Pena
50ab6c63a7
- Value stored to var is never used
2012-08-19 14:34:38 -03:00
Stanislav Malyshev
3b0573363a
fix comment
2012-07-14 14:50:50 -07:00
Stanislav Malyshev
582514d4c7
fix for bug#18556 - use simple tolower() function for internal things
2012-07-14 14:50:50 -07:00
Nikita Popov
5cf2f87fa7
Merge branch 'PHP-5.3' into PHP-5.4
...
* PHP-5.3:
Fix potential integer overflow in nl2br
Fix potential integer overflow in bin2hex
Conflicts:
ext/standard/string.c
2012-07-05 20:59:18 +02:00
Nikita Popov
157ddd9577
Fix potential integer overflow in nl2br
...
The buffer size was calculated manually, thus creating integer overflows
for very large inputs, e.g. nl2br(str_repeat("\n", 613566757)).
The code now uses safe_emalloc, thus making the code throw an error
instead of crashing.
2012-07-05 20:41:54 +02:00
Nikita Popov
88f46b162b
Fix potential integer overflow in bin2hex
...
The code was already using safe_emalloc but did the multiplication in
the first argument, thus making the use of safe_emalloc pretty useless.
The *2 is now moved to the second argument.
2012-07-05 20:14:49 +02:00
Nikita Popov
7ae93a2c4c
Fix bug #61660 : bin2hex(hex2bin($data)) != $data
...
If the input data has an odd length a warning is thrown and false is returned.
2012-04-08 22:38:21 +02:00
Adam Harvey
03f3d03ce0
MFH: Fix bug #60801 (strpbrk() mishandles NUL byte). (Trunk commit: r322934).
2012-03-02 03:39:04 +00:00
Adam Harvey
4fc6861030
MFH: Fix bug #60801 (strpbrk() mishandles NUL byte). (Trunk commit: r322934).
2012-03-02 03:39:04 +00:00
Pierrick Charron
d102030b00
Fixed memory leak in substr_replace
2012-03-01 15:10:29 +00:00
Stanislav Malyshev
cbcddcb02e
fix bug #55871 - Interruption in substr_replace()
2012-01-02 00:47:57 +00:00
Felipe Pena
e4ca0ed09f
- Year++
2012-01-01 13:15:04 +00:00
Felipe Pena
4e19825281
- Year++
2012-01-01 13:15:04 +00:00
Dmitry Stogov
4a25a7740d
Fixed ZE specific compile warnings (Bug #55629 )
2011-09-13 13:29:35 +00:00
Arpad Ray
a6a08dc322
Fixed bug #55366 : keys lost when using substr_replace an array
2011-08-29 21:35:28 +00:00
Arpad Ray
0e3b5b137c
Fixed bug #55366 : keys lost when using substr_replace an array
2011-08-29 20:38:52 +00:00
Arpad Ray
b52256c5be
add support for SORT_NATURAL and SORT_FLAG_CASE in array sort functions
2011-08-29 20:23:34 +00:00
Pierre Joye
9805e1674a
- remove magic quotes support, functions are kept (see the NEWS entry for the details) for BC reasons but do not allow to set enable MQ
2011-07-22 11:25:30 +00:00
Scott MacVicar
76cbcc7f66
Added fabled hex2bin() function
2011-06-03 00:12:22 +00:00
Rasmus Lerdorf
a5eeecb13f
Suppress a dozen unused return value warnings in places where the return
...
value is really not useful to us.
2011-05-16 17:22:41 +00:00
Pierrick Charron
1153eaf505
Revert bug #54454 fix from PHP_5_3 branch to avoid BC break in minor release
2011-04-21 01:51:24 +00:00
Felipe Pena
07f60310b2
- Remove undesired line (reported by Gökhan Özbulak)
2011-04-13 13:38:52 +00:00
Felipe Pena
782c00d744
- Remove undesired line (reported by Gökhan Özbulak)
2011-04-13 13:38:52 +00:00
Stanislav Malyshev
c4a8866abb
fix bug #54238 (use-after-free in substr_replace())
2011-04-13 06:32:41 +00:00
Stanislav Malyshev
2e206e0761
fix bug #54238 (use-after-free in substr_replace())
2011-04-13 06:32:41 +00:00
Pierrick Charron
4919f3286b
Fixed bug #54454 (substr_compare incorrectly reports equality in some cases)
2011-04-03 07:18:27 +00:00
Pierrick Charron
5a8c917c37
Fixed bug #54454 (substr_compare incorrectly reports equality in some cases)
2011-04-03 07:18:27 +00:00
Felipe Pena
927bf09c29
- Year++
2011-01-01 02:19:59 +00:00
Felipe Pena
0203cc3d44
- Year++
2011-01-01 02:17:06 +00:00
Kalle Sommer Nielsen
1fed0e5a84
Kill some more constness warnings in com_dotnet/phar/standard
2010-11-19 16:03:00 +00:00
Felipe Pena
bbf58f9234
- Fixed bug #53319 (strip_tags() may strip '<br />' incorrectly)
2010-11-16 22:16:44 +00:00
Felipe Pena
2e42d64007
- Fixed bug #53319 (strip_tags() may strip '<br />' incorrectly)
2010-11-16 22:16:44 +00:00
Ilia Alshanetsky
e4b1575d58
Fixed issues inside str_pad() identified by bug #52550
2010-08-06 19:55:10 +00:00
Ilia Alshanetsky
c0edb4afce
Fixed issues inside str_pad() identified by bug #52550
2010-08-06 19:55:10 +00:00
Ilia Alshanetsky
fa4bf064bd
Use correct order of operations. Second of many fixes for bug #52550
2010-08-06 19:11:34 +00:00
Ilia Alshanetsky
64ceec13f2
Use correct order of operations. Second of many fixes for bug #52550
2010-08-06 19:11:34 +00:00
Adam Harvey
3aceb07efd
MFH: fix bug #52380 (Typo in lcfirst comment docs).
2010-07-23 09:02:14 +00:00
Adam Harvey
929eec3b93
Fix bug #52380 (Typo in lcfirst comment docs) by updating the commented
...
prototype for lcfirst() to actually read lcfirst().
2010-07-20 04:26:57 +00:00
Rasmus Lerdorf
a259f797bf
vim fail
2010-06-02 19:26:10 +00:00
Rasmus Lerdorf
2c9ec4c22f
vim fail
2010-06-02 19:26:10 +00:00
Rasmus Lerdorf
6ba6263817
Tweak the fix for bug #51847 to still call libintl_setlocale
...
when libintl has done that redefine.
2010-06-02 19:24:36 +00:00
Rasmus Lerdorf
2c342f16c1
Tweak the fix for bug #51847 to still call libintl_setlocale
...
when libintl has done that redefine.
2010-06-02 19:24:36 +00:00
Rasmus Lerdorf
d4cca6da93
Fix for bug #51847
...
Someone in libintl world decided it was a good idea to do:
#undef setlocale
#define setlocale libintl_setlocale
That means, of course, that any use of "setlocale" by the
preprocessor now becomes libintl_setlocale which means we
no longer have a _zif_setlocale symbol in string.o, but we
magically have a _zif_libintl_setlocale symbol. The linker
is obviously not very happy about this when basic_functions.o
tries to find _zif_setlocale.
So, let's not do that again.
2010-06-02 05:53:13 +00:00
Rasmus Lerdorf
3f602cf510
Fix for bug #51847
...
Someone in libintl world decided it was a good idea to do:
#undef setlocale
#define setlocale libintl_setlocale
That means, of course, that any use of "setlocale" by the
preprocessor now becomes libintl_setlocale which means we
no longer have a _zif_setlocale symbol in string.o, but we
magically have a _zif_libintl_setlocale symbol. The linker
is obviously not very happy about this when basic_functions.o
tries to find _zif_setlocale.
So, let's not do that again.
2010-06-02 05:53:13 +00:00
Dmitry Stogov
24a1dbabc8
Fixed a possible memory corruption in parse_str(). Reported by Stefan Esser
2010-05-12 11:32:25 +00:00
Dmitry Stogov
214d3bc248
Fixed a possible memory corruption in parse_str(). Reported by Stefan Esser
2010-05-12 11:32:25 +00:00
Dmitry Stogov
2c5fecfeb4
Fixed a possible memory corruption in substr_replace()
2010-05-11 11:59:13 +00:00
Dmitry Stogov
57f8649eac
Fixed a possible memory corruption in substr_replace()
2010-05-11 11:59:13 +00:00
Dmitry Stogov
dd5c478be6
Added concept of interned strings. All strings constants known at compile time are allocated in a single copy and never changed.
2010-04-20 11:05:54 +00:00
Ilia Alshanetsky
b0f76c2534
Fixed bug #50847 (strip_tags() removes all tags greater then 1023 bytes long)
2010-02-01 12:59:08 +00:00
Sebastian Bergmann
9ba1e81665
sed -i "s#1997-2009#1997-2010#g" **/*.c **/*.h **/*.php
2010-01-03 09:23:27 +00:00
Ilia Alshanetsky
800519fcbb
Fixed bug #45599 (strip_tags() truncates rest of string with invalid attribute).
2009-12-22 02:04:12 +00:00
Felipe Pena
a94558c855
- Added MAKE_COPY_ZVAL(ppzv, pzv) macro
2009-12-08 01:57:37 +00:00
Scott MacVicar
065167bdae
Fix a typo
2009-11-06 09:02:52 +00:00
Ilia Alshanetsky
6a73387877
Fixed bug #49361 (wordwrap() wraps incorrectly on end of line boundaries).
2009-08-31 12:28:46 +00:00
Felipe Pena
a8604e2c20
- Fix ZTS build
2009-08-13 20:10:18 +00:00
Stanislav Malyshev
e52517d610
standardise and clean up string functions parameter parsing
2009-08-13 06:44:50 +00:00
Jani Taskinen
2539da79ba
- HEAD and PHP_5_2 have it like this, PHP_5_3 should not be different!
2009-07-27 09:23:06 +00:00
Kalle Sommer Nielsen
82cfb15677
Fixed bug #48872 (string.c: errors: duplicate case values) (Only in PHP_5_3)
2009-07-27 07:14:40 +00:00
Matt Wilmas
c27bf17f63
MFH: explode() stuff:
...
- Fixed bug #47560 (explode()'s limit parameter odd behaviour) by reverting change for bug #47546
- Changed int to long where needed (should fix memory errors from overflow seen in bug #47854 )
- Simplified logic a bit with limit and its default value
- php_explode_negative_limit(): removed safe_emalloc (not needed; plain erealloc is used later)
- Moved declarations/allocation to optimize if the delimiter isn't found
- Changed ALLOC_STEP size for less realloc's (and maybe better memory block alignment?)
2009-04-01 17:05:36 +00:00
Ilia Alshanetsky
e1cb53f5ec
Fixed bug #47856 (stristr() converts needle to lower-case).
2009-04-01 14:00:38 +00:00
Matt Wilmas
7f373057ef
Removed unneeded HashPosition variable (php_implode() doesn't change the internal pointer)
...
- It was added in '06 with the "200-300%" implode() optimization (hasn't been merged to HEAD)
2009-03-17 00:02:39 +00:00
Kalle Sommer Nielsen
627caefc4d
MFH: Fixed bug #47546 (Default value for limit parameter in explode is 0, not -1)
2009-03-03 11:47:31 +00:00
Moriyoshi Koizumi
3a9a83e7bc
- MFH: These should be E_WARNING for consistency with strpos()
2009-02-14 06:59:55 +00:00
Ilia Alshanetsky
a820c7c568
Improved validation checks inside str_pad()
2009-01-30 00:16:27 +00:00
Sebastian Bergmann
08659c2dcd
MFH: Bump copyright year, 3 of 3.
2008-12-31 11:15:49 +00:00
Brian Shire
b4141cc424
MFH: fix explode behavior to respect negative limit when string is empty.
2008-12-27 05:15:51 +00:00
Felipe Pena
b4150fdc3f
- MFH: Fixed bug #46578 (strip_tags() does not honor end-of-comment when it encounters a single quote)
2008-11-21 19:16:50 +00:00
Felipe Pena
8f12025b21
- MFH: Added str_getcsv()
2008-11-02 18:24:34 +00:00
Arnaud Le Blanc
d69dfa4b9f
MFH: initialize optional vars
2008-10-21 22:08:38 +00:00
Felipe Pena
0dbc79339c
- New parameter parsing API (zend_get_parameters_array_ex--)
...
- Fixed tests
2008-08-16 21:32:41 +00:00
Kalle Sommer Nielsen
fcf11ba65e
MFH: Implemented feature request #34381 (nl2br() should have an option for XHTML/HTML compatible BR element)
2008-08-14 02:56:23 +00:00
Olivier Hill
d247a23188
Fix regression issue
2008-07-31 14:20:40 +00:00
Scott MacVicar
6c48a01f40
MFH: Fix integer oveflow in strrpos()
2008-07-22 01:10:58 +00:00
Scott MacVicar
a9d60c014b
MFH: Fix bug when < is used within attribute.
2008-07-15 14:46:12 +00:00
Felipe Pena
8ea5ae6c9a
- MFB: Fixed bug #45485 (strip_tags and <?XML tag)
2008-07-11 12:25:38 +00:00
Antony Dovgal
b691365e7b
size_t -> int
2008-07-03 14:00:20 +00:00
Felipe Pena
2a35fb373f
- Removed unused variables
2008-07-01 11:27:05 +00:00
Antony Dovgal
c125461de1
"l" is long, that's why it is "l", not "i"
2008-06-30 10:39:34 +00:00
Antony Dovgal
b763c47e4e
int -> long
2008-06-30 10:10:44 +00:00
Olivier Hill
c5ec48e858
New parameter parsing API
2008-06-25 12:16:17 +00:00
Dmitry Stogov
273ee49acb
Fixed strtolower/strtoupper to not modify the passed argument
2008-06-24 06:07:08 +00:00
Olivier Hill
906b5b80df
New parameter parsing API for string, part I
2008-06-22 19:22:41 +00:00
Matt Wilmas
7da75d81e7
MFH: Add array_init_size() and use it where array size is known at initialization
2008-05-27 10:29:33 +00:00
Scott MacVicar
96a20f9aed
MFH: Fix compile error if _GNU_SOURCE is defined
2008-05-09 12:59:16 +00:00
Dmitry Stogov
2ecf4bb0a7
Lazy EG(active_symbol_table) initialization
2008-04-29 08:15:20 +00:00
Felipe Pena
84a8bb038a
MFH: New way for check void parameters
2008-03-10 22:15:36 +00:00
Marcus Boerger
d3e5026564
- MFH Add E_DEPRECATED (Lars Strojny, Felipe Pena, Marcus)
...
[DOC] Finally added deprecation messages
2008-02-23 17:06:22 +00:00
Etienne Kneuss
12bd169f24
MFH: Fix inconcistencies between substr and substr_compare
2008-02-13 17:02:16 +00:00
Stanislav Malyshev
fd597dce1b
[DOC] Add compile-time __DIR__ constant which implements dirname(__FILE__)
2008-02-12 00:21:15 +00:00
Felipe Pena
e2c7b27130
Fixed reference problem (variable were converted)
2008-02-03 14:30:25 +00:00
Felipe Pena
79cfa91a43
MFH: New parameter 'before_needle'
2008-02-01 12:28:44 +00:00
Ilia Alshanetsky
1a7b75eb11
Adjust new chr() param handling to address chr("") calls
2008-01-25 01:31:10 +00:00
Ilia Alshanetsky
2be1ae5415
use new param parsing API
2008-01-22 01:34:24 +00:00
David Coallier
a3c09d611c
- MFH (lcfirst())
...
- Initial test for lcfirst
2008-01-19 19:27:22 +00:00
Antony Dovgal
20b021b209
MFH: fix #43863 (str_word_count() breaks on cyrillic "ya" in locale cp1251)
...
patch by phprus at gmail dot com
2008-01-16 08:34:33 +00:00
David Coallier
d6806d5ead
- MFH
...
- Making sure this is also using the good zend parsing and added
the php_ucfirst function
2008-01-16 03:11:26 +00:00
Sebastian Bergmann
d1dded8751
MFH: Bump copyright year, 2 of 2.
2007-12-31 07:17:19 +00:00
Dmitry Stogov
ed5a424b4f
Additional fix for bug #42868
2007-12-24 18:09:50 +00:00
Antony Dovgal
fc78e491b4
MFH: add workaround for glibc issue
2007-12-13 22:29:48 +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
Jani Taskinen
aa3eee1dce
MFH:- Moved the old regex functions to own extension: ereg
2007-10-05 15:00:09 +00:00
Jani Taskinen
25be330cd0
- ws + cs + sync HEAD
2007-10-01 13:38:14 +00:00
Jani Taskinen
b34fcd4791
MFH: Fixed bug #42789
2007-10-01 12:05:41 +00:00
Jani Taskinen
adae5131f3
- Nuked ending dots from error messages
2007-09-30 05:40:23 +00:00
Pierre Joye
793956a0e1
- #42592 , remove ending dot in warning msg
2007-09-07 18:23:58 +00:00
Ilia Alshanetsky
022d4fc0b6
Added missing safety checks for 2nd parameter of setlocale() function
2007-09-07 02:28:42 +00:00
Ilia Alshanetsky
cd32b4e2bb
Fixed bug #42208 (substr_replace() crashes when the same array is passed
...
more than once)
2007-08-05 14:47:42 +00:00
Ilia Alshanetsky
f8217712a4
Fixed bug #42142 (substr_replace() returns FALSE when length > string
...
length).
[doc] Adjust length validation check inside substr_replace() to be similar
to that inside substr() so that excessive length is truncated to string
length.
2007-07-30 14:22:06 +00:00
Jani Taskinen
e8fcd7477c
MFH: Fixed str_pad() when passed huge negative pad length.
2007-07-23 13:27:59 +00:00
Ilia Alshanetsky
3fea65b0dc
Fixed "Floating point exception" inside wordwrap()
2007-07-22 15:55:16 +00:00
Antony Dovgal
2041566a12
MFH
2007-06-06 21:53:54 +00:00
Stanislav Malyshev
d114d0b0c8
fix the chunks fix
2007-06-06 18:15:41 +00:00
Stanislav Malyshev
29b9d79c2f
Fix chunk_split fix - avoid using floats
...
Fix money_format - don't give strfmon more arguments then supplied
Fix str[c]spn integer overflow
2007-06-06 17:59:07 +00:00
Antony Dovgal
ceef5840ad
fix folding
2007-06-05 13:35:26 +00:00
Ilia Alshanetsky
405a15043f
Corrected fix for CVE-2007-2872
2007-06-03 18:47:10 +00:00
Ilia Alshanetsky
9282d4add6
Fixed an interger overflow inside chunk_split(), identified by Gerhard
...
Wagner
2007-05-30 00:33:13 +00:00
Rasmus Lerdorf
2fba3bf13b
Uh, only meant to remove the null check, not the assignment
2007-05-24 21:29:27 +00:00
Rasmus Lerdorf
61b06f1527
Avoid running off the end of a non-null terminated string. Not that we
...
should have any of those, but a mistake in an extension could hit this
and the check doesn't actually make any sense as far as I am concerned.
2007-05-24 20:53:05 +00:00
Antony Dovgal
8de1ecef64
MFH: fix segfault in strripos() when offset == INT_MAX+1
...
identified and repoted by Joxean Koret
2007-05-10 22:10:43 +00:00
Antony Dovgal
7053b89072
MFH: fix #40915 (addcslashes unexpected behavior with binary input)
2007-03-26 10:25:41 +00:00
Antony Dovgal
81f99c721b
return false instead of empty string when -length is greater than (len - offset)
2007-03-12 23:42:26 +00:00
Ilia Alshanetsky
e82c30c845
Re-added check removed by the previous patch
2007-03-10 20:07:50 +00:00
Antony Dovgal
982de65f6e
fix substr()
...
it's perfectly legal to do substr("str", 0, 1000000);
2007-03-09 10:04:59 +00:00
Ilia Alshanetsky
02fae929af
Fixed bug #40754 (added substr() & substr_replace() overflow checks).
2007-03-09 01:58:34 +00:00
Stanislav Malyshev
79195bfe2e
clarify checks and error messages
2007-03-08 00:47:04 +00:00
Ilia Alshanetsky
8696c9bc89
Improved length parameter validation
2007-03-08 00:18:10 +00:00
Ilia Alshanetsky
42ff70ede8
Improved offset validation
2007-03-08 00:06:41 +00:00
Stanislav Malyshev
2625be4ed0
fix MOPB#14
...
# The error message seems wrong, so maybe better fix is needed
2007-03-07 18:15:46 +00:00
Ilia Alshanetsky
e769e1b49e
Fixed bug #40704 (strip_tags() does not handle single quotes correctly)
2007-03-03 15:46:29 +00:00
Ilia Alshanetsky
efad70c2cc
snprintf() -> slprintf()
2007-02-27 03:28:17 +00:00
Ilia Alshanetsky
1d08a8d157
Fixed bug #40637 (Regression in strip_tags() in relation so quote handling)
2007-02-27 00:15:21 +00:00
Marcus Boerger
50ea26760d
- Avoid sprintf, even when checked copy'n'paste or changes lead to errors
2007-02-24 02:17:47 +00:00
Ilia Alshanetsky
fc49f98e6a
Make sure p is not pointing to the start of the buffer
2007-02-13 23:55:20 +00:00
Ilia Alshanetsky
103b8c33c0
Fixed bug #40432 (strip_tags() fails with greater than in attribute).
2007-02-13 02:16:22 +00:00
Antony Dovgal
7b12fd5492
MFH
2007-02-10 00:50:38 +00:00
Antony Dovgal
82f70c9493
fix leaks on error
2007-02-01 13:45:25 +00:00
Ilia Alshanetsky
60e20922eb
Use safe_emalloc() rather then emalloc()
2007-01-08 14:24:59 +00:00
Sebastian Bergmann
4223aa4d5e
MFH: Bump year.
2007-01-01 09:36:18 +00:00
Antony Dovgal
0abe62e027
MFH
2006-12-20 23:36:56 +00:00
Antony Dovgal
a0e2ccf490
MFH
2006-12-20 23:30:30 +00:00
Ilia Alshanetsky
090e14dfda
Less hackish support for spaces at the start of tags within strip_tags()
2006-12-18 15:02:16 +00:00
Ilia Alshanetsky
7d7248390c
Filter fixes:
...
Fixed possible double encoding problem with sanitizing filters
Make use of space-strict strip_tags() function
2006-12-18 04:22:05 +00:00
Ilia Alshanetsky
563221783a
Removed deadcode found by Ron Korving
2006-12-13 15:39:12 +00:00
Stanislav Malyshev
6b651f8e60
Improve tolower()-related functions on Windows and VC2005 by caching locale and using
...
tolower_l function.
# Gives 10-18% speedup on bench.php
# Does not change behaviour for non-windows
2006-12-04 18:37:15 +00:00
Antony Dovgal
93fc85b2af
MFH: fix #39621 (str_replace() is not binary safe on strings with equal length)
2006-11-24 21:59:09 +00:00
Ilia Alshanetsky
07cdfefdee
Fixed bug #39350 (crash with implode("\n", array(false))).
2006-11-06 17:21:05 +00:00
Ilia Alshanetsky
a39201675f
Catch empty strings right away.
2006-10-11 14:19:55 +00:00
Antony Dovgal
9b7ba01618
MFH: avoid reading str[-1], add warning when invalid format specified
...
add test
2006-10-11 13:15:30 +00:00
Andrei Zmievski
e779c3aa36
Increment replace count value for case-sensitive single char searches.
2006-10-05 18:23:19 +00:00
Antony Dovgal
d8648eae57
MFH: fix #39032 (strcspn() stops on null character)
2006-10-04 11:14:32 +00:00
Ilia Alshanetsky
8581c7328f
optimize zend_hash_init() with known hash table sizes.
2006-10-03 17:41:47 +00:00
Andrei Zmievski
5c96544b7d
Use php_error_docref() instead.
2006-10-02 20:07:14 +00:00
Andrei Zmievski
007c6ff8d9
More offset fixes. Added E_NOTICE where appropriate.
2006-10-02 19:58:15 +00:00
Andrei Zmievski
c36d94aac2
Fix invalid memory access in strrpos().
2006-10-02 19:42:42 +00:00
Antony Dovgal
0c482b5c64
more z/Z fixes
2006-08-31 14:21:21 +00:00
Ilia Alshanetsky
1b9e18d471
Corrected problems introduced by previous commit.
...
# Issue found by Stefan
2006-08-29 19:50:04 +00:00
Ilia Alshanetsky
7c618c40bc
Finalize implode() patch
2006-08-29 14:32:16 +00:00
Antony Dovgal
ffc3d4a076
fix win32 build
...
EG(precision) can be changed in runtime, even in php_implode() (hint: __toString()), so please think twice before optimizing
2006-08-29 12:20:18 +00:00
Ilia Alshanetsky
914d362176
Adjust code to avoid TSRMLS_FETCH
2006-08-28 23:33:37 +00:00
Antony Dovgal
615f2d7295
fix ZTS build
2006-08-28 09:56:28 +00:00
Ilia Alshanetsky
78d7b0bf0e
Optimize the operation of implode() on non-string parameters
2006-08-27 19:06:09 +00:00
Antony Dovgal
d5c9b41db1
fix implode() function (see http://news.php.net/php.qa/26876 )
...
add test
2006-08-22 19:55:56 +00:00
Ilia Alshanetsky
a4d2f04307
Fixed overflow on 64bit systems in str_repeat() and wordwrap().
...
Disabled CURLOPT_FOLLOWLOCATION in curl when open_basedir or safe_mode are
enabled.
# Patches by Stefan E.
2006-08-10 14:40:13 +00:00
Antony Dovgal
1a4b715ef2
use memrchr/zend_memrchr instead of strrchr
2006-08-08 10:22:25 +00:00
Antony Dovgal
a28a95c11a
MFH: patch for #37846 (wordwrap() wraps incorrectly)
...
by Dmitry Kononov <ddk at krasn dot ru>
2006-07-28 12:23:18 +00:00
Michael Wallner
c0fcaa7acb
- fix bug #37945 pathinfo() cannot handle argument with special characters
...
like german "Umlaute"
2006-07-17 20:36:47 +00:00
Antony Dovgal
f3f44275f4
MFH
2006-07-17 06:45:08 +00:00
Marcus Boerger
f03f2c5eae
- MFH Pathinfo allows to get filename (Toby S, Christian S)
2006-07-16 10:37:24 +00:00
Antony Dovgal
3cce465528
fix invalid read - no need to compare strings if haystack is "" or shorter than needle
...
add test
2006-07-12 12:33:48 +00:00
Hannes Magnusson
ec420c3df8
Updated protos & vim folding
2006-06-26 18:48:56 +00:00
Ilia Alshanetsky
d74f9ff550
Improved performance of the implode() function on associated arrays by
...
200-300%.
2006-06-11 21:55:49 +00:00
Ilia Alshanetsky
37d88ca5a0
Improved performance of str_replace() when doing 1 char to 1 char or 1 char
...
to many chars replacement by 30-40%.
2006-06-10 15:29:06 +00:00
Ilia Alshanetsky
91bd50d1b0
Fixed bug #37394 (substr_compare() returns an error when offset equals
...
string length).
2006-05-10 13:07:15 +00:00
Antony Dovgal
896a5216d7
fix possible substr_compare() crash
...
add new tests
2006-04-25 12:48:42 +00:00
Antony Dovgal
bace0def1e
fix spelling in error messages:
...
greater/less thEn -> greater/less thAn
2006-04-03 09:14:33 +00:00
Antony Dovgal
ef3d879315
MFH: add brackets and clarity
2006-03-14 15:15:22 +00:00
Ilia Alshanetsky
0a076b11df
Fixed offset/length parameter validation in substr_compare() function.
2006-03-14 14:55:13 +00:00
Ilia Alshanetsky
80ea07d30c
Added overflow checks to wordwrap() function.
2006-03-13 14:37:10 +00:00
Marcus Boerger
5a69b29082
- Warning fixes by Steph
2006-02-26 10:57:00 +00:00
foobar
f80f58168c
nuke ws pollution
2006-01-29 17:54:45 +00:00
Pierre Joye
2bfe34e06d
- MFH: #36185 str_rot13(NULL) crash
2006-01-28 00:14:01 +00:00
Antony Dovgal
6fcc365c75
MFH: fix typo
2006-01-05 20:49:37 +00:00
foobar
5bd93221a8
bump year and license version
2006-01-01 12:51:34 +00:00
Antony Dovgal
1b7e3fe2a5
MFH: fix spelling and #35665
2005-12-14 00:54:29 +00:00
foobar
d0a54af4c5
MFH: Nuke php3 legacy
2005-12-05 22:54:01 +00:00
Ilia Alshanetsky
0242b892d2
Fixed bug #35427 (str_word_count() handles '-' incorrectly).
2005-11-29 16:14:19 +00:00
Ilia Alshanetsky
1a04335ec2
MFH: Fixed possible GLOBALS variable override when register_globals are ON.
...
MFH: Fixed possible register_globals toggle via parse_str().
MFH: Fixed negative offset handling in substr_compare() function.
2005-09-28 22:39:52 +00:00
foobar
23e671a51e
- Bumber up year
2005-08-03 14:08:58 +00:00
Ilia Alshanetsky
29bf2d3a09
Fixed bug in str_word_count() when charlist if specified and "word" starts
...
with a character found inside the charlist.
2005-07-23 19:44:13 +00:00
Anantha Kesari H Y
384a96faf6
ext/standard/file.h NetWare LibC has fnmatch and realpath implemented.
...
ext/standard/syslog.c Except LOG_SYSLOG other syslog macros are supported by NetWare LibC.
ext/standard/string.c NetWare fix for dirname
-- Kamesh
2005-07-15 12:35:12 +00:00
Antony Dovgal
3baf1f7632
fix #33605 (substr_compare() crashes with negative offset & length)
2005-07-07 15:19:40 +00:00
Ilia Alshanetsky
b9575ead72
make substr_count() 30% when counting instances of 1 byte long strings.
2005-06-19 16:31:51 +00:00
Ilia Alshanetsky
67ea97dfdf
Added offset & length parameters to substr_count() function.
2005-06-18 18:23:12 +00:00
Derick Rethans
ad21bb1baa
- That should have been removed, not commented out.
2005-06-02 08:51:20 +00:00
Derick Rethans
90f4590d87
- Fixed memory corruption in stristr().
2005-06-02 08:29:37 +00:00
foobar
156a908997
- Fixed bug #33200 (preg_replace(): magic_quotes_sybase=On makes 'e' modifier misbehave)
2005-05-31 12:54:56 +00:00
Antony Dovgal
4ce95ef1ea
fix bug #33076 (str_ireplace() incorrectly counts result string length and may cause segfault)
...
add test
2005-05-20 14:23:42 +00:00
Ilia Alshanetsky
ca10457a58
Fixed bug #32530 (chunk_split() does not append endstr if chunklen is
...
longer then the original string).
2005-04-03 18:08:40 +00:00
Ilia Alshanetsky
f56e5c045c
A more performance friendly version of Andrey's patch.
2005-03-12 17:51:19 +00:00
Andrey Hristov
f15c24d44c
added an optional third parameter to str_word_count(), which is used as
...
a list of characters which are considerd "is_alpha()". Thus V14GR4 can
be extracted as one word if the user supplies "14" as charlist.
FR #31560
# Nuno, are you wishing to document this one too? :)
2005-03-12 14:41:20 +00:00
Andrey Hristov
1236cfa38a
- type is either 1 or 2 if second parameter is set. if not set then type
...
is 0.
- use the lvalue for the second rvalue
2005-03-12 13:08:19 +00:00
Marcus Boerger
df56c39bda
- Cosmetics
2005-03-10 23:52:43 +00:00
Marcus Boerger
4172ec995c
- Do not touch return_valu's refcount or is_ref
2005-03-10 23:42:15 +00:00
Anantha Kesari H Y
033a45903c
NetWare allows directory seperator as \ and /
2005-03-01 14:59:37 +00:00
Ilia Alshanetsky
1e6454a67b
Fixed bug #31479 (Fixed crash in chunk_split(), when chunklen > strlen).
2005-01-18 15:47:57 +00:00
Antony Dovgal
39b25e4f3d
fix yet another typo
2004-11-21 13:35:32 +00:00
Antony Dovgal
d9dd604ae7
fix typo (bug #30857 )
2004-11-21 13:33:20 +00:00
Derick Rethans
59651c4e58
- Fixed bug #30630 : Added a BSD based strtod function that is
...
locale-independent. (PHP part)
2004-11-03 23:36:51 +00:00
Ilia Alshanetsky
0818faee7f
Slight optimization in str_split() when split length is the same or greater
...
then the string length.
2004-10-20 22:44:43 +00:00
Ilia Alshanetsky
2476198086
Fixed bug #30356 (str_ireplace() does not work on all strings).
2004-10-07 23:10:35 +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
Andrey Hristov
96f5c697dd
Add support for negative values of limit of explode(). If limit is negative
...
then all components are returned except the last abs(limit) ones.
2004-07-18 11:34:28 +00:00
Andrey Hristov
0eef82a733
fixing bug #28974 : overflow in array_slice()
...
The same kind of overflow appeared in array_splice(), substr() and
substr_replace()
2004-07-11 21:15:04 +00:00
Ilia Alshanetsky
5201e62d0d
Fixed bug #29034 (wordwrap() returns a boolean when passed empty string).
2004-07-06 22:16:42 +00:00
Stefan Esser
a27d5d842a
IE we love you all...
2004-06-26 07:43:02 +00:00
Stefan Esser
585628ba67
Fixed: made 3rd parameter to strrpos 64bit safe.
2004-06-15 22:38:18 +00:00
Ilia Alshanetsky
d24465ba8a
Fixed bug #28386 (wordwrap() wraps lines 1 character too soon).
2004-05-13 17:44:23 +00:00
Jay Smith
8f306fd749
Fixed a segfault. (It's possible for large offsets to make strrpos()
...
read past the end of the haystack string...)
2004-05-06 16:11:50 +00:00
Sara Golemon
c52cc1c333
BugFix 27675 and add regression test.
2004-03-26 19:23:42 +00:00
Dmitry Stogov
6e63ea45c7
BUG #27457 was fixed (using temporary hash table with string keys only)
2004-03-18 09:48:37 +00:00
Ard Biesheuvel
81f05c18f5
Wordsize fixes
2004-02-25 20:16:27 +00:00
Sara Golemon
ba8ad292d9
Make today's changes work w/ str_ireplace() as well.
2004-02-23 20:34:59 +00:00
Sara Golemon
1c82797664
Short circuit str_replaces when we already know that needle does not occur in haystack.
...
Note: Prior bugfix was for #27176 not #27276
2004-02-23 20:13:14 +00:00
Sara Golemon
5144a1f522
Bugfix #27276 : When using str_replace to expand a string, count occurances of needle in haystack to avoid massive overallocation
2004-02-23 20:06:01 +00:00
Andi Gutmans
dbeb4158d2
- A belated happy holidays and PHP 5
2004-01-08 08:18:22 +00:00
Ilia Alshanetsky
56f046a67a
Fixed ZTS build.
2003-12-10 21:23:35 +00:00
Moriyoshi Koizumi
b2cd08f33d
Fix bug #26574 (basename() doesn't work properly with multibyte characters)
2003-12-10 07:15:28 +00:00
Moriyoshi Koizumi
c4c586a652
Fix typo.
2003-12-10 06:04:15 +00:00
Sara Golemon
feee37a17a
Optimize strrpos/strripos for single char strings and fix offset to report correctly
2003-12-03 01:31:56 +00:00
Sara Golemon
3d6fcddfd2
Restore ability to use strrpos/strripos with an ordinal needle
2003-12-03 01:11:36 +00:00
Ilia Alshanetsky
5a4dda42e3
Optimize substr_replace (this makes it 3-8 times faster depending on the
...
string length).
2003-12-01 23:17:22 +00:00
Ilia Alshanetsky
cd482c502c
Removed dead code.
2003-11-27 01:08:42 +00:00
Ilia Alshanetsky
ab7ee13670
Added substr_compare().
2003-10-30 00:49:33 +00:00
Moriyoshi Koizumi
103b3c6626
Simplification.
2003-09-29 02:23:40 +00:00
Sara Golemon
ef7905a188
Bug Fix#25671 Corruption in subarrays in subject when using str_replace
2003-09-26 17:57:13 +00:00
Sascha Schumann
36ac7a5bb0
MFB Avoid zero-length keys which result in a spinning process
2003-09-20 16:10:49 +00:00
Sara Golemon
3560cd83c0
Squelch warning "Variable may be used uninitialized."
...
This would never occur anyway because of the logic of the function,
but gcc isn't quite smart enough to realize this.
2003-08-27 00:43:54 +00:00
Ilia Alshanetsky
ed40ae2650
emalloc -> safe_emalloc
2003-08-11 23:16:54 +00:00
Sara Golemon
3caa0d0aa9
Fix Bug#24784 single character search keys not respecting case sensitivity/replace count parameters.
2003-07-25 01:03:39 +00:00
Moriyoshi Koizumi
4b07cb98b1
Fixed bug #24556
2003-07-12 09:33:31 +00:00
Stanislav Malyshev
baa3892fe1
Fix #24281 - str_replace not updating the count if value is
...
not initialized
2003-06-23 14:09:14 +00:00
Sara Golemon
4c52cf5f90
When skipping blank searchvals we should advance the corresponding replace hash as well
2003-06-20 15:41:43 +00:00
Ilia Alshanetsky
b5dc8f918e
fixed proto
2003-06-11 02:16:19 +00:00
James Cox
f68c7ff249
updating license information in the headers.
2003-06-10 20:04:29 +00:00
Ilia Alshanetsky
aec7815e9c
Fixed bug #24098 (Crash in pathinfo() due to double var initialization).
...
# This is a php5 specific bug, no MFB needed
2003-06-09 18:12:36 +00:00
Melvyn Sopacua
e4006659b2
MFB: LC_MESSAGES support
2003-05-27 00:42:39 +00:00
Ilia Alshanetsky
2e361db1fe
Fixed bug #23788 (str|preg_replace clober the array elements).
...
# Should this be MFBed to 4.3 branch?
2003-05-25 21:48:57 +00:00
Sterling Hughes
24eee37fed
seems there is only the stupid way to be stupid (implode copying array
...
elements)
at least we check for IS_STRING, which should clear this up 90% of the time
2003-05-21 17:44:08 +00:00