php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #77080 Deflate not working
Submitted: 2018-10-29 14:27 UTC Modified: 2020-09-22 14:05 UTC
Votes:1
Avg. Score:5.0 ± 0.0
Reproduced:1 of 1 (100.0%)
Same Version:1 (100.0%)
Same OS:1 (100.0%)
From: huisman at comandi dot nl Assigned: cmb (profile)
Status: Duplicate Package: Streams related
PHP Version: PHP 7.2.11 OS: Ubuntu 18.04.1 LTS
Private report: No CVE-ID: None
Welcome back! If you're the original bug submitter, here's where you can edit the bug or add additional notes.
If you forgot your password, you can retrieve your password here.
Password:
Status:
Package:
Bug Type:
Summary:
From: huisman at comandi dot nl
New email:
PHP Version: OS:

 

 [2018-10-29 14:27 UTC] huisman at comandi dot nl
Description:
------------
`stream_filter_append` in combination with `zlib.deflate` no longer works as expected in PHP 7.2 and produces an empty string instead of the expected compressed string. (see test script).

Test script:
---------------
<?php

$stream = fopen('php://temp', 'w+');

fwrite($stream, 'something something');

stream_filter_append($stream, 'zlib.deflate', STREAM_FILTER_READ, ['level' => 6]);

rewind($stream);

$contents = fread($stream, 1024);


Expected result:
----------------
A compressed string

Actual result:
--------------
An empty string

Patches

Pull Requests

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2018-10-29 22:39 UTC] cmb@php.net
Works here: <https://3v4l.org/RRJ8b>.
 [2018-10-29 22:40 UTC] cmb@php.net
-Summary: Defalate not working +Summary: Deflate not working
 [2018-10-30 08:56 UTC] huisman at comandi dot nl
-PHP Version: 7.2Git-2018-10-29 (Git) +PHP Version: PHP 7.2.11
 [2018-10-30 08:56 UTC] huisman at comandi dot nl
Strange, ran on PHP 7.2.11-3+ubuntu18.04.1+deb.sury.org+1 (cli) (built: Oct 25 2018 06:44:08) ( NTS ) in a script it's working.

The following zlib configuration is set:

zlib

ZLib Support => enabled
Stream Wrapper => compress.zlib://
Stream Filter => zlib.inflate, zlib.deflate
Compiled Version => 1.2.11
Linked Version => 1.2.11

Directive => Local Value => Master Value
zlib.output_compression => Off => Off
zlib.output_compression_level => -1 => -1
zlib.output_handler => no value => no value
 [2018-10-30 08:57 UTC] huisman at comandi dot nl
Strange, when ran on PHP 7.2.11-3+ubuntu18.04.1+deb.sury.org+1 (cli) (built: Oct 25 2018 06:44:08) ( NTS ) in a script it's not working.

The following zlib configuration is set:

zlib

ZLib Support => enabled
Stream Wrapper => compress.zlib://
Stream Filter => zlib.inflate, zlib.deflate
Compiled Version => 1.2.11
Linked Version => 1.2.11

Directive => Local Value => Master Value
zlib.output_compression => Off => Off
zlib.output_compression_level => -1 => -1
zlib.output_handler => no value => no value
 [2019-12-12 13:34 UTC] martins256 at gmail dot com
The zlib.deflate stream filter is working as expected in these versions: 5.5.21 - 5.5.38, 5.6.5 - 7.1.33

But in these versions the zlib.deflate stream filter truncates data.
5.2.0 - 5.5.20, 5.6.0 - 5.6.4, 7.2.0 - 7.4.0

Here is another test code version:

$string = str_repeat("0123456789", 100);
$resource = fopen('data://text/plain,' . $string,'r');
stream_filter_append($resource, 'zlib.deflate', STREAM_FILTER_READ, 6);
$compressed = stream_get_contents($resource);
echo strlen($compressed);

Results visible here:
https://3v4l.org/OOjF4
 [2020-09-22 14:05 UTC] cmb@php.net
-Status: Open +Status: Duplicate -Package: Zlib related +Package: Streams related -Assigned To: +Assigned To: cmb
 [2020-09-22 14:05 UTC] cmb@php.net
This appears to be a duplicate of bug #77069; I've just added a
test case to the respective PR[1].

[1] <https://github.com/php/php-src/pull/6001/commits/433195d6231ebef618bfbd1060cff9bb9e469996>
 
PHP Copyright © 2001-2024 The PHP Group
All rights reserved.
Last updated: Thu Nov 21 15:01:30 2024 UTC