diff options
author | Michael Wallner <mike@php.net> | 2014-04-02 15:39:16 +0200 |
---|---|---|
committer | Michael Wallner <mike@php.net> | 2014-04-02 15:39:16 +0200 |
commit | 4d412421df6d4bce0be7f5530e97534a3d68a192 (patch) | |
tree | d78ce1d65d932c2c0bc74bbcd545c3bd188d2df3 /main/streams/streams.c | |
parent | 2b7bf2cb6e4ace83556d0b38e208b51b6eda6be0 (diff) | |
parent | 06e6d42ee39a6c9f80227305ab9a77ae03658be6 (diff) | |
download | php-git-4d412421df6d4bce0be7f5530e97534a3d68a192.tar.gz |
Merge branch 'PHP-5.6'
* PHP-5.6:
NEWS
NEWS
Fixed bug #61019 (Out of memory on command stream_get_contents)
Diffstat (limited to 'main/streams/streams.c')
-rw-r--r-- | main/streams/streams.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/main/streams/streams.c b/main/streams/streams.c index 4c4764c1ea..f8295017c1 100644 --- a/main/streams/streams.c +++ b/main/streams/streams.c @@ -731,6 +731,10 @@ PHPAPI size_t _php_stream_read(php_stream *stream, char *buf, size_t size TSRMLS if (!stream->readfilters.head && (stream->flags & PHP_STREAM_FLAG_NO_BUFFER || stream->chunk_size == 1)) { toread = stream->ops->read(stream, buf, size TSRMLS_CC); + if (toread == (size_t) -1) { + /* e.g. underlying read(2) returned -1 */ + break; + } } else { php_stream_fill_read_buffer(stream, size TSRMLS_CC); |