summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRemi Collet <fedora@famillecollet.com>2015-01-13 11:25:08 +0100
committerRemi Collet <fedora@famillecollet.com>2015-01-13 11:25:08 +0100
commitc4844bff99871ce44e71a7b20b64fb603866191a (patch)
treeae0e6567208bc697453185d0d56000105b63cd27
parent7a3b0cb8f7355e84d6edb0bebd8fcb00c074a64d (diff)
php-horde-Horde-Imap-Client: upstream patch
-rw-r--r--Horde_Imap_Client-upstream.patch58
-rw-r--r--php-horde-Horde-Imap-Client.spec10
2 files changed, 67 insertions, 1 deletions
diff --git a/Horde_Imap_Client-upstream.patch b/Horde_Imap_Client-upstream.patch
new file mode 100644
index 0000000..00ca1e3
--- /dev/null
+++ b/Horde_Imap_Client-upstream.patch
@@ -0,0 +1,58 @@
+From ae1adf9f1549f6bb826b541274949cfd0e77457e Mon Sep 17 00:00:00 2001
+From: Michael M Slusarz <slusarz@horde.org>
+Date: Tue, 13 Jan 2015 03:00:10 -0700
+Subject: [PATCH] [mms] Workaround broken in-memory stream filter handling.
+
+Needed to work on PHP 5.5.21+ and 5.6.5+
+---
+ .../Horde/Imap/Client/Data/Format/Filter/Quote.php | 25 ++++++++++++++++++++--
+ framework/Imap_Client/package.xml | 4 ++--
+ 2 files changed, 25 insertions(+), 4 deletions(-)
+
+diff --git a/framework/Imap_Client/lib/Horde/Imap/Client/Data/Format/Filter/Quote.php b/framework/Imap_Client/lib/Horde/Imap/Client/Data/Format/Filter/Quote.php
+index a3f1788..3964f69 100644
+--- a/framework/Imap_Client/lib/Horde/Imap/Client/Data/Format/Filter/Quote.php
++++ b/framework/Imap_Client/lib/Horde/Imap/Client/Data/Format/Filter/Quote.php
+@@ -23,11 +23,28 @@
+ class Horde_Imap_Client_Data_Format_Filter_Quote extends php_user_filter
+ {
+ /**
++ * Has the initial quote been prepended?
++ *
++ * @var boolean
++ */
++ protected $_prepend;
++
++ /**
++ */
++ public function onCreate()
++ {
++ $this->_prepend = false;
++ }
++
++ /**
+ * @see stream_filter_register()
+ */
+ public function filter($in, $out, &$consumed, $closing)
+ {
+- stream_bucket_append($out, stream_bucket_new($this->stream, '"'));
++ if (!$this->_prepend) {
++ stream_bucket_append($out, stream_bucket_new($this->stream, '"'));
++ $this->_prepend = true;
++ }
+
+ while ($bucket = stream_bucket_make_writeable($in)) {
+ $consumed += $bucket->datalen;
+@@ -35,7 +52,11 @@ public function filter($in, $out, &$consumed, $closing)
+ stream_bucket_append($out, $bucket);
+ }
+
+- stream_bucket_append($out, stream_bucket_new($this->stream, '"'));
++ /* feof() call needed due to:
++ * http://news.php.net/php.internals/80363 */
++ if ($closing || feof($this->stream)) {
++ stream_bucket_append($out, stream_bucket_new($this->stream, '"'));
++ }
+
+ return PSFS_PASS_ON;
+ }
diff --git a/php-horde-Horde-Imap-Client.spec b/php-horde-Horde-Imap-Client.spec
index dc558f2..9d19b86 100644
--- a/php-horde-Horde-Imap-Client.spec
+++ b/php-horde-Horde-Imap-Client.spec
@@ -12,7 +12,7 @@
Name: php-horde-Horde-Imap-Client
Version: 2.26.0
-Release: 1%{?dist}
+Release: 2%{?dist}
Summary: Horde IMAP abstraction interface
Group: Development/Libraries
@@ -20,6 +20,8 @@ License: LGPLv2
URL: http://pear.horde.org
Source0: http://%{pear_channel}/get/%{pear_name}-%{version}.tgz
+Patch0: %{pear_name}-upstream.patch
+
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root
BuildArch: noarch
BuildRequires: php(language) >= 5.3.0
@@ -90,10 +92,13 @@ drivers.
%setup -q -c
cd %{pear_name}-%{version}
+%patch0 -p3 -b .upstream
+
# Don't install .po and .pot files
# Remove checksum for .mo, as we regenerate them
sed -e '/%{pear_name}\.po/d' \
-e '/%{pear_name}\.mo/s/md5sum=.*name=/name=/' \
+ -e '/Quote.php/s/md5sum=.*name=/name=/' \
../package.xml >%{name}.xml
touch -r ../package.xml %{name}.xml
@@ -157,6 +162,9 @@ fi
%changelog
+* Tue Jan 13 2015 Remi Collet <remi@fedoraproject.org> - 2.26.0-2
+- add upstream for stream change in php
+
* Wed Jan 07 2015 Remi Collet <remi@fedoraproject.org> - 2.26.0-1
- Update to 2.26.0