Commit graph

1294 commits

Author SHA1 Message Date
Gustavo Lopes
cddbb98ada strtr() with 2nd param array - optimization
About a 1.25x speedup in my test script by writing the result string
only when a match is found and at the end instead of on each iteration.
2013-01-14 12:22:42 +01:00
Gustavo Lopes
2111ee3df5 Refactoring, bugs & leaks 2013-01-14 12:22:41 +01:00
Gustavo Lopes
ccf15cf2dc Optimize strtr w/ 2nd arg array
Fixes bug #63893: poor efficiency of strtr() using array with keys of
very different length.

The implementation is basically all new, which carries some risk with
it.

The algorithm is described in "A Fast Algorithm For Multi-Pattern
Searching" (1994) by Sun Wu and Udi Manber.
2013-01-14 12:22:41 +01:00
Xinchen Hui
6deb8361f3 Merge branch 'PHP-5.4' into PHP-5.5 2013-01-09 10:57:47 +08:00
Xinchen Hui
15aaa9c660 Merge branch 'PHP-5.3' into PHP-5.4 2013-01-09 10:54:23 +08:00
Xinchen Hui
c05ee74e7f Fixed bug #63943 (Bad warning text from strpos() on empty needle) 2013-01-09 10:53:20 +08:00
Xinchen Hui
a666285bc2 Happy New Year 2013-01-01 16:37:09 +08:00
Xinchen Hui
0a7395e009 Happy New Year 2013-01-01 16:28:54 +08:00
Xinchen Hui
a2045ff332 Happy New Year~ 2013-01-01 16:02:16 +08:00
Felipe Pena
01c3e0e62c Merge branch 'PHP-5.4'
* PHP-5.4:
  - Value stored to var is never used
2012-08-19 14:34:46 -03:00
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