Andrei Zmievski
09811323a9
bin2hex() should accept only binary strings.
2006-08-02 20:38:39 +00:00
Dmitry Stogov
be56f79c6f
zts fix
2006-08-02 07:54:41 +00:00
Andrei Zmievski
263d329acd
Fix leaks.
2006-08-02 02:11:56 +00:00
Andrei Zmievski
b67e1d9f92
Add SORT_LOCALE_STRING support to array_multisort() and mark it with U.
2006-08-01 22:28:26 +00:00
Andrei Zmievski
7b0fc1bb1c
Whew. Fix up extract to params API, Unicode support, and simplify it as
...
well.
2006-08-01 21:50:44 +00:00
Antony Dovgal
20b0975a43
fix test
...
I really hope there are no systems where /dev is a symlink
2006-07-28 13:47:41 +00:00
Antony Dovgal
f6de0063dd
patch for #37846 (wordwrap() wraps incorrectly)
...
by Dmitry Kononov <ddk at krasn dot ru>
2006-07-28 12:21:34 +00:00
Antony Dovgal
9f8046454b
fix compile warning on Solaris, getloadavg() is in sys/loadavg.h there
2006-07-26 08:57:11 +00:00
Hannes Magnusson
0ba734cb6e
Update protos & arginfo for memory_get_usage() & memory_get_peak_usage()
2006-07-25 16:40:11 +00:00
Dmitry Stogov
61d39cf1c1
Changed memory_get_usage() and memory_get_peak_usage(). Optional boolean argument allows get memory size allocated by emalloc() (by default) or real size of memory allocated from system.
2006-07-25 13:41:08 +00:00
Marcus Boerger
7dfc69f42e
- Correctly handle binary proeprty names which are not mangled
2006-07-24 23:28:00 +00:00
Marcus Boerger
eb0fd63012
- zend_(u_)_unmangle_property_name() has changed
2006-07-24 17:55:41 +00:00
Marcus Boerger
f55c2d0885
- Tiny piece of unicode support
2006-07-23 06:05:23 +00:00
Andrei Zmievski
bcb2df2974
Apply Matt W's patch (with a fix) for array_combine() binary key safety.
2006-07-21 23:47:40 +00:00
Andrei Zmievski
54528ce322
Remove references to BG(user_compare_fnnc_name).
...
# Less bickering, more coding!
2006-07-21 23:29:25 +00:00
Andrei Zmievski
d32d425468
Make array_*intersect* functions use params API with FCI cache and mark
...
them with U.
2006-07-21 23:25:08 +00:00
Dmitry Stogov
7a09b15702
ZTS fix
2006-07-21 07:34:18 +00:00
Andrei Zmievski
40b4c60b9a
Make array_walk(_recursive) use params API with FCI cache and mark them
...
with U.
2006-07-20 23:21:32 +00:00
Andrei Zmievski
6e9dcc4800
Make all array_*diff* functions use params API (along with FCI cache)
...
and mark them with U.
# What a mess (before my changes of course) :)
2006-07-20 22:51:20 +00:00
Andrei Zmievski
e9a9a26e7e
Rewrite array_map() to use params API with fci cache and mark it with U.
2006-07-20 20:54:23 +00:00
foobar
b3f926bf21
update
2006-07-20 10:08:31 +00:00
Michael Wallner
73ba3e2592
- added error_get_last() function
2006-07-19 12:25:02 +00:00
Dmitry Stogov
6687f0377b
New memory manager
2006-07-18 09:08:06 +00:00
Andrei Zmievski
675832c204
Update array_filter() and array_reduce() to use params API with FCI
...
cache and mark them with U.
2006-07-17 22:18:01 +00:00
Andrei Zmievski
34e5b3befa
Upgrade uasort() and uksort() to use params API with FCI cache and mark
...
them with U.
2006-07-17 21:20:02 +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
Michael Wallner
6ad2093794
MFB52: fix bug #37945 pathinfo() cannot handle argument with special
...
characters like german "Umlaute"
2006-07-17 20:43:07 +00:00
Andrei Zmievski
0bb270d352
- Use zend_uchar for param type
...
- %v is for UG() - dependent strings, which is not the case here
- 'T' is only useful for multiple parameters, so use 't' instead
2006-07-17 19:32:10 +00:00
Antony Dovgal
a3952b7495
tweak constant() to use the brand new unicode parameters API
2006-07-17 07:11:06 +00:00
Antony Dovgal
8177adf8fb
make use of new param parsing API
...
use convert_to_text(), which makes constant() unicode aware
finally nuke invalid reads
2006-07-17 07:02:26 +00:00
Antony Dovgal
688000ca74
fix access to freed memory in pathinfo()
...
add test
2006-07-17 06:44:45 +00:00
Antony Dovgal
50242cd8c5
3+1 != 3 =)
2006-07-16 15:59:02 +00:00
Pierre Joye
02a92e7eb5
- MFB: PATHINFO_FILENAME constant registration (Sara)
2006-07-16 15:56:00 +00:00
Antony Dovgal
6b4bfe4a35
all stream functions are actually macros that already have TSRMLS_CC,
...
no need to pass it manually
2006-07-16 15:54:25 +00:00
Marcus Boerger
5544029699
- Fixed Bug #29538 number_format and problem with 0
2006-07-16 10:49:06 +00:00
Marcus Boerger
92a47b44b4
- Pathinfo allows to get filename (Toby S, Christian S)
2006-07-16 10:34:32 +00:00
Marcus Boerger
d795e0b9bb
- Implement todo: SplFileObject: ability to set the CSV separator per object
2006-07-15 14:31:51 +00:00
Marcus Boerger
dd47d64887
- Readd proto
2006-07-15 12:09:13 +00:00
Marcus Boerger
adc5a7f087
- Update array_fill_keys, better unicode support, use new param parsing API
2006-07-15 12:06:10 +00:00
Marcus Boerger
da5c076100
- Add array_fill_keys() (Matt W, php_lists at realplain com)
2006-07-15 10:10:47 +00:00
Andrei Zmievski
246585490b
Add test for compact().
2006-07-14 23:04:58 +00:00
Andrei Zmievski
853ab6e09f
Adjust array_pad(), array_reverse(), and array_unique() for params API
...
and mark them with U.
2006-07-14 22:41:22 +00:00
Andrei Zmievski
5766cdbd01
- Simplify array_combine() and adjust for params API
...
- Adjust array_count_values() and array_rand() for params API and mark
with U
2006-07-14 22:15:54 +00:00
Andrei Zmievski
40cabdca59
Adjust array_key_exists(), array_slice(), and array_splice() for params
...
API and mark them with U.
2006-07-14 21:16:30 +00:00
Sara Golemon
74eb59da59
#38105 (4/3) ustrlen != USTRLEN, update variable names used to keep this block's meaning clear
2006-07-14 20:50:45 +00:00
Antony Dovgal
44ad98405f
MFB: rephrase the error message ( fixes #38106 )
2006-07-14 20:45:37 +00:00
Andrei Zmievski
8d28257255
Make array_change_key_case() -- a candidate for the quite possibly the
...
most useless function ever -- use params API and mark it with U.
2006-07-14 20:07:57 +00:00
Sara Golemon
165b2f2b76
#38105 (3/3) Default file_put_contents() to FILE_TEXT when unicode.semantics=on and flags param not specified
2006-07-14 19:16:23 +00:00
Andrei Zmievski
6dfb4768b4
Update end(), prev(), next(), reset(), current(), and key() for params
...
API and mark with U.
2006-07-14 18:12:45 +00:00
Andrei Zmievski
0322c14d14
Update array_search()/in_array() for params API and mark with U.
2006-07-14 18:03:13 +00:00
Andrei Zmievski
f344fe0153
Update array_keys() and array_values() for params API and mark with U.
2006-07-14 17:55:27 +00:00
Andrei Zmievski
c30d1ecf11
- Simplify array_fill().
...
- Do params API for a couple of funcs and mark them as Unicode
compliant.
2006-07-14 17:35:54 +00:00
Antony Dovgal
8d8344272e
WS and CS fixes
...
I suppose STR_FREE() is better than if(..) {efree (..);}
2006-07-14 08:38:30 +00:00
Dmitry Stogov
73001d4257
Fixed unserialize() in unicode mode
2006-07-14 08:29:06 +00:00
Andrei Zmievski
f717e25ce7
FIXME note
2006-07-13 22:26:50 +00:00
Andrei Zmievski
c8254d82d7
Update array_sum() and array_product() (U).
2006-07-13 22:26:42 +00:00
Andrei Zmievski
8553cf9da8
Mark a few more funcs.
2006-07-13 22:03:42 +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
Andrei Zmievski
c01957091a
- Make compact() normalize variablem name before checking symtable.
...
- Mark tested/upgraded functions with 'U' flag.
2006-07-13 21:08:43 +00:00
Antony Dovgal
87d846c2cb
initialize variables
2006-07-13 17:55:50 +00:00
Antony Dovgal
12f44c2b2b
fix #38086 (stream_copy_to_stream() returns 0 when maxlen is bigger than the actual length)
2006-07-13 11:58:42 +00:00
Antony Dovgal
9aa7c1d6e9
fix assert() in Unicode mode
2006-07-12 22:19:12 +00:00
Andrei Zmievski
938f6d4141
Use zend_convert_from_unicode() in var_dump().
2006-07-12 17:23:53 +00:00
Antony Dovgal
9de18e2ca2
don't try to compare strings if haystack is "" or shorter than needle
...
add test
2006-07-12 12:33:04 +00:00
Antony Dovgal
8db69d4005
add new tests by Ligaya Turmelle
2006-07-11 21:28:07 +00:00
Antony Dovgal
f41a4f4546
/tmp is often a symlink, use /bin instead
2006-07-11 21:19:56 +00:00
Dmitry Stogov
14a10f441d
Fixed bug #37947 (zend_ptr_stack reallocation problem)
2006-07-10 14:02:54 +00:00
Hannes Magnusson
8f1d44beea
make everyone happy
2006-07-03 22:41:46 +00:00
Hannes Magnusson
302deb04d8
fix tests
2006-07-03 16:03:39 +00:00
Hannes Magnusson
12fbcb6344
nuke types in arginfo
2006-07-02 00:10:36 +00:00
Nuno Lopes
ec2b150da0
MFB5.2: fix assert() problems
2006-07-01 12:29:38 +00:00
Hannes Magnusson
226fa23b51
Do not force pass by-ref, these functions only prefer by-ref
2006-06-30 18:16:50 +00:00
Antony Dovgal
9f65fd37c6
add error messages to disk_free_space() & disk_total_space() (feature request #37971 )
2006-06-30 10:52:51 +00:00
Antony Dovgal
a6e26b742a
fix off-by-one in addslashes() in Unicode mode
2006-06-30 09:35:21 +00:00
Hannes Magnusson
d03ba9cdc5
fix test
2006-06-29 14:53:31 +00:00
Hannes Magnusson
b9c078acf4
url->URL
2006-06-29 14:42:30 +00:00
Hannes Magnusson
0a2cfcce41
MFB: url -> URL
2006-06-29 14:32:24 +00:00
Antony Dovgal
bfceaaf1d1
unicode_semantics -> unicode.semantics
2006-06-28 15:07:14 +00:00
Hannes Magnusson
ba0175365c
arginfo fixes
2006-06-27 22:14:07 +00:00
Hannes Magnusson
29ca8007ee
Add arginfo for sys_getloadavg()
...
iUpdate arginfo for base64_decode()
2006-06-26 22:19:04 +00:00
Hannes Magnusson
0cce3777ea
MFB: bug #37244 (base64_decode violates RFC 3548)
...
-Add test
2006-06-26 22:17:43 +00:00
Hannes Magnusson
e9c59b98ac
MFB: sys_getloadavg()
2006-06-26 20:28:30 +00:00
Rasmus Lerdorf
157ce4f35e
Cleaner fix
2006-06-26 13:10:31 +00:00
Rasmus Lerdorf
eef9835bb1
sapi_getenv() estrdups the returned string now, so we need to free it
2006-06-26 13:03:41 +00:00
Hannes Magnusson
731c3e4db0
Removed custom deprecate error messages
...
Use the fancy ZEND_ACC_DEPRECATED flag.
2006-06-26 11:31:19 +00:00
Hannes Magnusson
f4ea75f240
Added argument info
...
(forces user-space filters to register correct arguments)
Added tests
2006-06-25 22:51:55 +00:00
Antony Dovgal
361c7da159
MFB: improve test
2006-06-25 21:23:38 +00:00
Hannes Magnusson
3f2f258517
Enabled image_type_to_extension() which has been in cvs for 2,5 years now..
...
Added test
2006-06-25 20:52:34 +00:00
Hannes Magnusson
57e8133427
Fixed image_type_to_extension()
...
Added support for IMAGETYPE_JPX & IMAGETYPE_JB2
2006-06-25 20:51:31 +00:00
Hannes Magnusson
bf0a79d381
Updated protos
...
Fixed vim folding
2006-06-25 19:19:31 +00:00
Hannes Magnusson
9f96f0340b
Argument info
2006-06-25 19:17:20 +00:00
Ilia Alshanetsky
a2b61371cd
MFB: Change E_ERROR to E_RECOVERABLE_ERROR
2006-06-23 11:40:14 +00:00
Nuno Lopes
b5fda0101c
MFB 5.2
2006-06-20 21:58:03 +00:00
Antony Dovgal
016fe711f9
fix tests
2006-06-20 19:49:44 +00:00
Hannes Magnusson
1cb807ab63
Renamed file to bug37864.phpt
2006-06-20 19:31:04 +00:00
Hannes Magnusson
2c87f890bc
Test for bug #37864 (file_get_contents() leaks on empty file)
2006-06-20 19:30:19 +00:00
Antony Dovgal
3d0e1456e4
fix test
2006-06-20 19:12:12 +00:00
Antony Dovgal
bc5a9692cb
don't leave garbage in tmp dir
2006-06-20 18:55:37 +00:00
Hannes Magnusson
f3334c8df3
add test for file_get_contents() leaking on empty file
2006-06-20 18:46:14 +00:00
Antony Dovgal
f59302fe60
fix test to work on all platforms
2006-06-20 13:14:20 +00:00
Hannes Magnusson
a24552497f
Fixed test
2006-06-14 19:47:30 +00:00
Ilia Alshanetsky
4ccab9d5ab
MFB: Fixed ZTS build
2006-06-11 20:47:55 +00:00
Hannes Magnusson
53d262c04d
Nuke unused var
2006-06-11 20:33:29 +00:00
Ilia Alshanetsky
2863d56d8a
MFB: Fully print array() in phpinfo().
2006-06-11 16:27:41 +00:00
Ilia Alshanetsky
6434512a05
MFB: 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:51:23 +00:00
Andrei Zmievski
a871adf6bb
MFB
2006-06-03 18:58:40 +00:00
Michael Wallner
231ad17475
- explicit usage of TS macros
...
# this could have been raised a lot earlier
2006-06-03 11:19:44 +00:00
Michael Wallner
be96a46e96
- fix encoding
2006-06-02 20:09:22 +00:00
Michael Wallner
4ce0141713
- new output control code
...
# scan README.NEW-OUTPUT-API to get a grasp
# tree has been tagged with BEFORE_NEW_OUTPUT_API
#
# TODO:
# - improve existing output handlers
# - move zlib.output_compression cruft from SAPI.c to zlib.c
# - output_encoding handling was ambigious, resp. is undefined yet
# - more tests
2006-06-02 19:51:43 +00:00
Ilia Alshanetsky
c270a8e627
MFB: fixed compiler warning
2006-06-01 22:42:53 +00:00
Antony Dovgal
01bc25e4b6
suppress_errors is used only on Win32, no need to look for it on other systems
2006-06-01 14:03:38 +00:00
Antony Dovgal
3e5407b16d
nuke unused variable
2006-06-01 13:45:16 +00:00
Antony Dovgal
12a2d02b99
fix tests
2006-06-01 13:04:10 +00:00
Sara Golemon
a8ca40564c
Minor fixes (bjori)
2006-05-30 19:05:21 +00:00
Ilia Alshanetsky
1aadb29d51
MFB: Added memory_get_peak_usage() function for retrieving peak memory
...
usage of a PHP script.
2006-05-30 14:51:54 +00:00
Antony Dovgal
11b66c6cec
add test
2006-05-29 10:42:37 +00:00
Antony Dovgal
d5f90c48c7
initialize srcstream
...
use different variable in local scope
2006-05-29 10:42:10 +00:00
Antony Dovgal
f59d444d8a
prevent resource leaking when passing invalid stream resource as second argument
2006-05-29 10:23:53 +00:00
Johannes Schlüter
40da89d6b9
- Fix str_replace with unicode strings as key
2006-05-28 21:09:58 +00:00
Marcus Boerger
875caa4870
- MFB
2006-05-25 10:50:53 +00:00
Ilia Alshanetsky
940ed4a426
MFB: Fixed bug #37563 (array_key_exists performance is poor for &$array).
2006-05-24 23:14:36 +00:00
Marcus Boerger
c627a4819b
- Add more tests from Ligaya Turmelle
2006-05-23 23:45:39 +00:00
Marcus Boerger
47343620cb
- Add new test
2006-05-23 22:26:55 +00:00
Marcus Boerger
a4d6c5a6f0
- Handle corrupt base64 data in data: url
2006-05-21 13:35:06 +00:00
Marcus Boerger
e7d381f7b6
- Drop unneccesary check and change to safe_emalloc
2006-05-21 13:25:16 +00:00
Hartmut Holzgraefe
205bdeda41
Name change: php_get_tmpdir() renamed to sys_get_temp_dir()
2006-05-19 10:44:34 +00:00
Antony Dovgal
bd6125c312
add new tests by Ligaya Turmelle
2006-05-19 07:44:58 +00:00
Dmitry Stogov
ab9e070bbf
Optimized zend_try/zend_catch macroses (eliminated memcpy())
2006-05-19 06:11:02 +00:00
Ilia Alshanetsky
1dd395b27f
MFB: Fixed bug #37505 (touch() truncates large files).
2006-05-19 02:51:18 +00:00
Ilia Alshanetsky
1226d31151
MFB: Make filters without a resource throw E_RECOVERABLE_ERROR rather then
...
E_ERROR
2006-05-16 14:12:52 +00:00
Antony Dovgal
17c98844d5
new mkdir tests
2006-05-16 13:07:07 +00:00
Marcus Boerger
3856d8da6d
- Add strict compliant RFC2397 support (no //)
2006-05-14 18:35:40 +00:00
Marcus Boerger
3b66ab74f9
- RFC2397 add decoding
...
# done (need to decide whether all examples shouldl work or specs are
# followed)
2006-05-14 01:39:24 +00:00
Marcus Boerger
73069100fd
- Change to use dedicated stream ops
2006-05-14 00:45:27 +00:00
Marcus Boerger
4f29479a22
- RFC 2397 meta data handling
2006-05-14 00:40:53 +00:00
Marcus Boerger
29c0f5bede
- Initial RFC2397 support
...
# decoding is missing right now
2006-05-13 17:53:01 +00:00
Ilia Alshanetsky
7dd87b5307
MFB: Fixed bug #37394 (substr_compare() returns an error when offset equals
...
string length).
2006-05-10 13:07:56 +00:00
Hartmut Holzgraefe
daa5febadf
Added php_get_tmpdir() function that returns the default directory for
...
temporary files (as requested in bug #35380 )
2006-05-06 09:59:02 +00:00
Sara Golemon
d77a8562c2
Unicode Updates:
...
file() now unicode ready
get_meta_tags() updated for FS encoding, but content is still non-unicode
2006-05-02 18:23:32 +00:00
Marcus Boerger
dcc51c1977
- WS
2006-05-01 15:59:56 +00:00
Frank M. Kromann
954199c9fb
More ZSTR() fixes
2006-04-29 14:53:26 +00:00
Frank M. Kromann
e6e2754439
Remove ZSTR() from stream macros. Calling function must apply this macro
2006-04-28 19:03:58 +00:00
Antony Dovgal
cf31c2f51a
remove nonexistent tag
2006-04-25 12:50:14 +00:00
Antony Dovgal
7bde7e87eb
MF51: fix possible substr_compare() crash
...
add new tests
2006-04-25 12:49:04 +00:00
Antony Dovgal
8a434f5df0
merge fix for #37158 into HEAD
...
add test
2006-04-22 23:49:39 +00:00
Frank M. Kromann
1791befa0c
Fix Win32 build. NULL_ZSTR was converted to ZSTR(NULL_ZSTR)
2006-04-22 10:39:31 +00:00
Antony Dovgal
acf25d1aac
fix typo (see #35900 )
2006-04-19 08:43:05 +00:00
Sara Golemon
ea106887a7
Silence compiler warnings
2006-04-18 19:10:12 +00:00
Andrei Zmievski
efd298e2eb
I'm not sure what the heck people were thinking here, but it should be
...
fixed finally. Please test.
2006-04-18 05:18:12 +00:00
Andrei Zmievski
6b336175a6
Fix trim("a") bug.
2006-04-18 02:40:29 +00:00
Sara Golemon
04ecb8b1fd
Fix 'soft line break' handling in convert.quoted-printable-decode
2006-04-17 19:25:48 +00:00
Ilia Alshanetsky
78b81f2591
MFB51: fixed typo
2006-04-16 17:41:26 +00:00
Ilia Alshanetsky
53ab6c0920
MFB51: Fixed bug #37045 (Fixed check for special chars for http redirects).
2006-04-16 16:55:25 +00:00
Antony Dovgal
8c086bcf8d
make this test to work on all systems
2006-04-14 20:30:47 +00:00
Sara Golemon
1e9a9d596b
MFB (r-1.409.2.6) copy() should not disrespect open_basedir on source file
2006-04-14 17:44:56 +00:00
Antony Dovgal
becb273c16
MF51: fix #37077 (stream_socket_server() leaks when the port is not allowed)
2006-04-14 10:01:34 +00:00
Sara Golemon
d05836890b
Preserve full name of filter for use in stream_get_meta_data()
2006-04-13 04:41:08 +00:00
Sara Golemon
0b84c73635
Allow http:// wrapper to automatically apply correct unicode.from.* filter based on content-type header
2006-04-12 22:40:56 +00:00
Antony Dovgal
a44fe39f40
fix test title
2006-04-12 22:21:13 +00:00
Johannes Schlüter
e7747e8d74
- Fix bug #37060 (Type of retval of Countable::count() is not checked)
2006-04-12 19:29:52 +00:00
Ilia Alshanetsky
490609ffc4
MFB51: fixed test
2006-04-10 23:48:38 +00:00
foobar
6af3218f81
more cleanup (lingering ini settings which do not exist anymore, etc.)
2006-04-10 15:09:15 +00:00
foobar
a6a3c9059d
- Fixed bug #36909 (ld: Undefined symbols: _lchown)
2006-04-10 11:56:04 +00:00
foobar
0e8b5470be
fix credits
2006-04-10 09:46:32 +00:00
Ilia Alshanetsky
f58ef85af5
MFB51: Fixed bug #36875 (is_*() functions do not account for open_basedir).
2006-04-09 17:58:02 +00:00
Sara Golemon
5a9feaa6b1
Plug leak which occurs in unicode mode
2006-04-06 20:05:43 +00:00
Sara Golemon
b6f62cabff
Silence false positives on test results
2006-04-06 20:03:27 +00:00
Sara Golemon
78d1f7ea40
Silence false positives in test failures
2006-04-06 19:51:36 +00:00
Antony Dovgal
4e85f445f0
add test
2006-04-05 12:29:35 +00:00
Ilia Alshanetsky
1df7d39695
Fixed bug #36957 (serialize() does not handle recursion).
2006-04-05 02:28:39 +00:00
Derick Rethans
1bad8fea12
- No need to have this one twice here... (Thanks Steph)
2006-04-04 06:04:49 +00:00
Ilia Alshanetsky
a24cb8773f
MFB51: Fixed an unlikely, but possible memory leak.
2006-04-03 13:46:35 +00:00
Antony Dovgal
0b0fff07b2
fix spelling in error messages:
...
greater/less thEn -> greater/less thAn
2006-04-03 09:14:50 +00:00
Sara Golemon
53450fae8a
Update tests for working with unicode
2006-04-03 05:57:40 +00:00
Sara Golemon
b2523b29b8
Update filename handling and mark various functions for unicode safety
2006-04-01 00:05:31 +00:00
Sara Golemon
fd606a8d78
Add API hooks and unicode.filesystem_encoding for handling unicode
...
conversions of filename entries.
Normal path conversions will simply use this converter,
Certain other protocols (such as http) which specify a
required character set (utf8), may override the conversion
by defining a path_encode() and/or path_decode() wrapper ops method.
2006-03-31 22:51:37 +00:00
Antony Dovgal
ec376e510c
MF51: fix compile failure with old GCC (see bug #36931 )
2006-03-31 11:11:26 +00:00
Antony Dovgal
4f1da95828
fix TSRM build
2006-03-30 19:59:51 +00:00
Ilia Alshanetsky
0f48af3cec
MFB51: Fixed XSS inside phpinfo() with long inputs.
2006-03-30 19:16:28 +00:00
Sara Golemon
51b9a0f269
Make php_stream_copy_to_mem() unicode aware and
...
update userspace function file_get_contents().
Note: fgc()'s second parameter (use_include_path) has been changed
to be a bitmask "flags" parameter instead.
For the most commonly used values (TRUE, 1) this will continue functioning
as expected since the value of FILE_USE_INCLUDE_PATH is (coincidentally) 1.
The impact to other values should be noted in the migration6 guide.
This change makes it possible to allow fgc() to return binary file
contents (default) or unicode transcoded contents (using FILE_TEXT flag).
2006-03-30 00:22:51 +00:00
Sara Golemon
1c97a0d78c
Update php_stream_passthru() to handle unicode data.
...
This updates userspace functions fpassthru() and readfile()
UG(output_encoding) is used by php_stream_passthru() to translate
unicode stream contents back to an outputable character set.
Note: readfile()'s second parameter (use_include_path) has been changed
to be a bitmask "flags" parameter instead.
For the most commonly used values (TRUE, 1) this will continue functioning
as expected since the value of FILE_USE_INCLUDE_PATH is (coincidentally) 1.
The impact to other values should be noted in the migration6 guide.
This change makes it possible to allow readfile() to output binary file
contents (default) or unicode transcoded contents (using FILE_TEXT flag).
2006-03-29 22:52:24 +00:00
Andrei Zmievski
d57e79782e
Bug!
2006-03-29 05:56:06 +00:00
Sara Golemon
30a2bd1d11
Another (and hopefully last) major streams commit.
...
This moves unicode conversion to the filter layer
(rather than at the lower streams layer)
unicode_filter.c has been moved from ext/unicode to main/streams
as it's an integral part of the streams unicode conversion process.
There are now three ways to set encoding on a stream:
(1) By context
$ctx = stream_context_create(NULL,array('encoding'=>'latin1'));
$fp = fopen('somefile', 'r+t', false, $ctx);
(2) By stream_encoding()
$fp = fopen('somefile', 'r+');
stream_encoding($fp, 'latin1');
(3) By filter
$fp = fopen('somefile', 'r+');
stream_filter_append($fp, 'unicode.from.latin1', STREAM_FILTER_READ);
stream_filter_append($fp, 'unicode.to.latin1', STREAM_FILTER_WRITE);
Note: Methods 1 and 2 are convenience wrappers around method 3.
2006-03-29 01:20:43 +00:00
Ilia Alshanetsky
75c7f810ea
MFB51: Check 2nd parameter of tempnam() against path components.
2006-03-27 23:41:05 +00:00
Andrei Zmievski
e85495f6f1
Fix UErrorCode check.
2006-03-27 23:05:38 +00:00
Andrei Zmievski
d761aa7eb2
Typo.
2006-03-27 22:16:53 +00:00
Andrei Zmievski
626be75d6c
Make a UTODO note.
2006-03-27 21:19:12 +00:00
Andrei Zmievski
a8c291f8fe
Proto updates.
2006-03-27 19:24:18 +00:00
Dmitry Stogov
d1d9ce8fed
Test for strtr() with non-ascii encoding
2006-03-27 14:37:14 +00:00
Dmitry Stogov
9d9adb2f35
Unicode support
2006-03-27 14:19:18 +00:00
Dmitry Stogov
c744d73d04
Unicode support
2006-03-27 13:37:47 +00:00
Dmitry Stogov
06cfa710b4
Fixed testFixed testFixed testFixed testFixed testFixed testFixed testFixed testFixed test
2006-03-27 10:15:02 +00:00
Dmitry Stogov
bdfa3b1d36
Fixed ZTS build
2006-03-27 06:02:42 +00:00
Ilia Alshanetsky
3bf02bde43
MFB51: Fixed bug #36857 (Added support for partial content fetching to the
...
HTTP streams wrapper).
2006-03-26 17:12:26 +00:00
Derick Rethans
ad6a972de3
- Implemented basic collation support. For some reason "new Collator" gives segfaults when the object's collation resource is used.
...
- The following example shows what is implemented:
<?php
$orig = $strings = array(
'côte',
'cote',
'côté',
'coté',
'fluÃe',
'flüÃe',
);
echo "German phonebook:\n";
$c = collator_create( "de@collation=phonebook" );
foreach($c->sort($strings) as $string) {
echo $string, "\n";
}
echo $c->getAttribute(Collator::FRENCH_COLLATION) == Collator::ON
? "With" : "Without", " french accent sorting order\n";
echo "\nFrench with options:\n";
$c = collator_create( "fr" );
$c->setAttribute(Collator::CASE_FIRST, Collator::UPPER_FIRST);
$c->setAttribute(Collator::CASE_LEVEL, Collator::ON);
$c->setStrength(Collator::SECONDARY);
foreach($c->sort($strings) as $string) {
echo $string, "\n";
}
echo $c->getAttribute(Collator::FRENCH_COLLATION) == Collator::ON
? "With" : "Without", " french accent sorting order\n";
?>
2006-03-26 11:06:24 +00:00
Sara Golemon
a64789a452
Expand stream_context_create() to allow specifying params
...
as well as options. Ignore the internal name change of the first arg.
The first arg is still for options, the second arg is for actual params.
2006-03-26 04:40:11 +00:00
Derick Rethans
3df5f17231
- Commit intermediate work so that I can hack on it on some plane.
2006-03-26 02:15:47 +00:00
Sara Golemon
f67ed7f3d4
Allow bidirectional encoding option via single context param
2006-03-24 22:27:13 +00:00
Sara Golemon
dfc827d108
Fix stream_get_line():
...
Checking type isn't nearly as important as checking nullness...
2006-03-24 21:37:42 +00:00
Sara Golemon
0b2b16e6c7
Update fgetss() for unicode
2006-03-24 21:32:39 +00:00
Sara Golemon
880dd406f2
Add php_stream_get_record_unicde() API call.
...
Update stream_get_line() userspace function to handle unicode streams.
2006-03-24 19:22:24 +00:00
Ilia Alshanetsky
96afde2af7
MFB51:
...
Added myself to PDO and PDO_MySQL credits
Added Wez to PDO_MySQL credits
Added Tony to Q&A team credits
Regenerated the credits file
2006-03-23 18:39:12 +00:00
Antony Dovgal
932c5d9e0e
MF51: prevent segfault when exception is thrown from Countable::count()
2006-03-22 22:06:08 +00:00
Antony Dovgal
a4c6a19335
use set_time_limit(), this test takes forever on AIX
2006-03-22 19:27:28 +00:00
Derick Rethans
3056defb26
- Moved strtotitle to ext/standard and implemented the fallback case to
...
non-unicode with ucwords. There is also an implementation for unicode ucwords
but that returns different results then strtotitle as it uppercases the
first character of every word, and doesn't *titlecase* a word. The test case
shows that.
2006-03-22 10:20:20 +00:00
Ilia Alshanetsky
f7875f813c
MFB51: Fixed bug #36689 (Removed arbitrary limit on the length of syslog
...
messages).
2006-03-21 00:59:41 +00:00
Antony Dovgal
c2eabef473
shutdown syslog module before freeing basic_globals
2006-03-20 23:33:07 +00:00
Antony Dovgal
6901e09492
MF51: fix #36808 (syslog ident becomes garbage between requests)
2006-03-20 23:07:31 +00:00
Antony Dovgal
1df7e13f48
fix #36741 (userstreams testcase have off-by-one error on fseek())
2006-03-20 22:08:59 +00:00
Antony Dovgal
ba1ac82bc9
don't leak memory even though the code is not stable yet
2006-03-20 20:09:20 +00:00
Antony Dovgal
9557d44ed8
fix buffer overrun
2006-03-20 14:10:23 +00:00
Antony Dovgal
2c750d7f84
make the code a bit cleaner - no need for two different checks that are doing effectively the same
2006-03-19 22:12:39 +00:00
Marcus Boerger
792e4d9f4d
- Fix TSRM
2006-03-17 23:14:55 +00:00
Andrei Zmievski
25b95e4250
Make is_string() return TRUE for both Unicode and binary strings.
2006-03-17 23:00:20 +00:00
Andrei Zmievski
a75b8f5f35
Fix compiler errors by using NULL_ZSTR where zstr is expected.
...
# I guess we need to use NULL_ZSTR instead of NULL when passing NULL to
# functions that expect zstr parameter.
2006-03-17 22:52:55 +00:00
Andrei Zmievski
6b165251db
Calculate the size of the tmp[] buffer directly at compile time.
2006-03-17 22:51:20 +00:00
Derick Rethans
c6b425432a
- Actually make this is_binary() too.
2006-03-17 14:53:57 +00:00
Derick Rethans
2ffc93140d
- Fixed bug in ucfirst() implementation. If the tmp_len = 0 then it will not
...
write the uppercased character to the buffer, but only returns the length of
the uppercased letter as per
http://icu.sourceforge.net/apiref/icu4c/ustring_8h.html#a50 .
- Updated is_string():
If Unicode semantics is turned on, return "true" for Unicode strings only.
If Unicode semantics is turned off, return "true" for native strings only.
- Added is_binary() function that returns "true" for native strings only.
- Added first implementation of upgraded strtr function. It works except if
combining sequences or surrogates are used in the non-array method of calling
this function.
2006-03-17 14:29:05 +00:00
Dmitry Stogov
86780519d4
Disabled dl(). Now it is enabled only when a SAPI layer registers it explicitly. Only CLI, CGI and EMBED do this.
2006-03-16 16:53:10 +00:00
Dmitry Stogov
9d7ca01c8b
Dropped allow_call_time_pass_reference, the error is maden E_STRICT.
2006-03-16 11:32:00 +00:00
Derick Rethans
c76917a773
- Fixed two memory issues:
...
- In the first one we were calculating the tmp_len wrong which made the
u_strFromUTF32() function try to convert too many code points.
- The second issue was a bit more subtle as the "what" string wasn't
duplicated but still modified. This string is passed as data to the
function and this kind of data the engine tries to free when the function
ends. Because we were re-allocating the data the original memory location
was already freed resulting in a double free error when the engine tries to
free the argument as it was passed to the function.
2006-03-15 12:20:49 +00:00
Derick Rethans
52bec1ea36
- Reduce space in serialization. The first 128 bytes will now use just the
...
character and everything above will use \uXXXX. It seems that unserialize
doesn't work at all yet on the U: element so that I added to my to-do list.
2006-03-15 09:50:47 +00:00
Sara Golemon
df77705572
Switch (zstr) casts to use ZSTR() macro.
2006-03-15 00:28:57 +00:00
Sara Golemon
b576354982
More stream updates.
...
fgets() will work now as will anything which calls one of the
_php_stream_get_line() family of functions.
The one exception here is when the legacy defines are used on a unicode
stream. At the moment they'll simply return NULL, I'll update these
to do sloppy conversion in a bit.
'make (u)test' still doesn't work, but it's a different doesn't work.
2006-03-14 21:15:05 +00:00
Antony Dovgal
49ec971d85
add brackets and clarity
2006-03-14 15:14:59 +00:00
Ilia Alshanetsky
24d06926d4
MFB51: Fixed offset/length parameter validation in substr_compare() function.
2006-03-14 14:55:27 +00:00
Derick Rethans
f7bfe18307
This makes file_put_contents() work for:
...
<?php
declare(encoding="latin1");
$a = "1234å67890";
file_put_contents( "/tmp/testuc.1", $a);
file_put_contents( "/tmp/testuc.2", (string) $a);
$context = stream_context_create();
stream_context_set_params($context, array( "output_encoding" => "latin1" ) );
file_put_contents( "/tmp/testuc.3", $a, FILE_TEXT, $context);
file_put_contents( "/tmp/testuc.4", (string) $a, FILE_TEXT, $context);
?>
But it still throws a warning on ".3". It's a small design issue that I
didn't want to touch right now.
2006-03-13 15:01:44 +00:00
Ilia Alshanetsky
fef63cd5e5
MFB51: Added overflow checks to wordwrap() function.
2006-03-13 14:37:32 +00:00
Sara Golemon
48798021b5
Refactor streams layer for PHP6.
...
Don't be frightened by the size of this commit.
A significant portion of it is restoring the read buffer semantics back
to what PHP4/5 use. (Or a close aproximation thereof).
See main/streams/streams.c and ext/standard/file.c for a set of
UTODO comments covering work yet to be done.
2006-03-13 04:40:11 +00:00
Dmitry Stogov
cebd9e8f30
Fixed debug_zval_dump() to support private and protected members
2006-03-10 08:43:14 +00:00
Michael Wallner
9656a34cbc
MFB: Fix bug #36656 (http_build_query generates invalid URIs due to use of square brackets)
2006-03-08 22:04:48 +00:00
Ilia Alshanetsky
27e175eef0
So long safe_mode mode.
...
Also removed the magic_quotes configure option, no longer relevant since
the magic is gone :-).
2006-03-08 14:41:45 +00:00
Pierre Joye
bb1ec86f9d
- remove magic_quotes_gpc, magic_quotes_runtime, magic_quotes_sybase
...
(calling ini_set('magic_....') returns 0|false
- get_magic_quotes_gpc, get_magic_quotes_runtime are kept but always return false
- set_magic_quotes_runtime raises an E_CORE_ERROR
2006-03-08 00:43:32 +00:00
Andrei Zmievski
da831e6e0c
Fix protos to use 'string' for parameters that can be either binary or
...
unicode.
2006-03-06 21:49:21 +00:00
Ilia Alshanetsky
edd7d2a1df
Fixed bug #36630 (umask not reset at the end of the request).
...
# This needs to be MFHed, but since it requires an API break it has to wait
# until the next minor release.
2006-03-06 14:27:45 +00:00
Derick Rethans
72c9d907d3
- And not here either...
2006-03-05 19:02:11 +00:00
Dmitry Stogov
b86007f0e1
ZTS fix
2006-03-03 08:50:25 +00:00
Andrei Zmievski
c5f6efe367
Fix ucwords() to use full case mapping.
...
# Note that this is different from i18n_strtotitle() which uses
# locale-aware word break iterator. The difference is seen here:
#
# $a = "pouvez-vous";
# var_dump(ucwords($a));
# var_dump(i18n_strtotitle($a));
#
# Outputs:
#
# unicode(11) "Pouvez-vous"
# unicode(11) "Pouvez-Vous"
#
2006-03-02 23:12:33 +00:00
Andrei Zmievski
1751241203
- Update protos for Unicode-upgraded functions
...
- Also fix ucfirst() to use full case mapping, so that ß (sharp s)
maps to 'SS' for example
2006-03-02 20:37:07 +00:00
Dmitry Stogov
c366cc6d1a
Nuke int32_t (everywhere except streams layer) and signed/unsigned warnings
2006-03-02 13:12:45 +00:00
Rob Richards
06a4265712
64-bit fixes - ("make test" now works again on these platforms)
2006-03-01 11:19:35 +00:00
Ilia Alshanetsky
d31641e2d8
Parsers for previous patch
2006-02-28 14:46:29 +00:00
Ilia Alshanetsky
1a3bb9f4bd
MFB51: Fixed bug #36459 (Incorrect adding PHPSESSID to links, which
...
contains \r\n).
2006-02-28 14:45:52 +00:00
Dmitry Stogov
e3b7f3fd0d
Unicode support: MS Visual C compatibility
2006-02-26 11:57:14 +00:00
Rasmus Lerdorf
f16846e685
Binary safety patch from Moriyoshi
2006-02-25 21:30:32 +00:00
Ilia Alshanetsky
a9b90524d5
MFB51: Fixed bug #35900 (stream_select() should warning when tv_sec is
...
negative).
2006-02-23 18:28:37 +00:00
Brian France
2eb346cce0
fixed bug #35594 for all systems. "optind = 0" doesn't work on FreeBSD, but "optind = 1" seems to work on all systems (bug #36091 )
2006-02-23 03:48:30 +00:00
Dmitry Stogov
5237a40717
Unicode support: fixed serialization of "Serializable"
2006-02-22 14:20:54 +00:00
Dmitry Stogov
ba8069e77e
Unicode support: fixed serealization of "Serializable" and "IncompleteClass"
2006-02-22 13:47:40 +00:00
Dmitry Stogov
84f0adff86
Unicode support: fixed GLOBALS protection
2006-02-22 13:10:32 +00:00