summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRemi Collet <fedora@famillecollet.com>2013-12-12 15:21:40 +0100
committerRemi Collet <fedora@famillecollet.com>2013-12-12 15:21:40 +0100
commit0b4dc7a4323063487edec92b1ae94577a1336b86 (patch)
tree00fec046c97f59ebdb16f0cbad5b326c44ca62ab
parent881e45767d4a455d832a8bc004a54807c83e9503 (diff)
php-pecl-zip: 1.12.3 (stable)
-rw-r--r--php-pecl-zip.spec23
-rw-r--r--zip-upstream.patch205
2 files changed, 17 insertions, 211 deletions
diff --git a/php-pecl-zip.spec b/php-pecl-zip.spec
index 32d69ca..1e81255 100644
--- a/php-pecl-zip.spec
+++ b/php-pecl-zip.spec
@@ -16,8 +16,8 @@
Summary: A ZIP archive management extension
Summary(fr): Une extension de gestion des ZIP
Name: php-pecl-zip
-Version: 1.12.2
-Release: 2%{?dist}%{!?nophptag:%(%{__php} -r 'echo ".".PHP_MAJOR_VERSION.".".PHP_MINOR_VERSION;')}
+Version: 1.12.3
+Release: 1%{?dist}%{!?nophptag:%(%{__php} -r 'echo ".".PHP_MAJOR_VERSION.".".PHP_MINOR_VERSION;')}
%if %{with_libzip}
License: PHP
%else
@@ -29,8 +29,6 @@ URL: http://pecl.php.net/package/zip
Source: http://pecl.php.net/get/%{pecl_name}-%{version}.tgz
-Patch0: %{pecl_name}-upstream.patch
-
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
BuildRequires: php-devel
%if %{with_libzip}
@@ -49,6 +47,16 @@ Provides: php-pecl(%{pecl_name})%{?_isa} = %{version}
Provides: php-%{pecl_name} = %{version}-%{release}
Provides: php-%{pecl_name}%{?_isa} = %{version}-%{release}
+# Other third party repo stuff
+%if "%{php_version}" > "5.4"
+Obsoletes: php53-pecl-%{pecl_name}
+Obsoletes: php53u-pecl-%{pecl_name}
+Obsoletes: php54-pecl-%{pecl_name}
+%endif
+%if "%{php_version}" > "5.5"
+Obsoletes: php55u-pecl-%{pecl_name}
+%endif
+
%if 0%{?fedora} < 20
# Filter private shared
%{?filter_provides_in: %filter_provides_in %{_libdir}/.*\.so$}
@@ -67,7 +75,6 @@ Zip est une extension pour créer et lire les archives au format ZIP.
%setup -c -q
cd %{pecl_name}-%{version}
-%patch0 -p1
%if %{with_libzip}
sed -e '/LICENSE_libzip/d' -i ../package.xml
@@ -190,13 +197,17 @@ fi
%changelog
+* Thu Dec 12 2013 Remi Collet <remi@fedoraproject.org> - 1.12.3-1
+- Update to 1.12.3 (stable)
+- drop merged patch
+
* Thu Oct 24 2013 Remi Collet <remi@fedoraproject.org> 1.12.2-2
- upstream patch, don't use any libzip private struct
- drop LICENSE_libzip when system version is used
- always build ZTS extension
* Wed Oct 23 2013 Remi Collet <remi@fedoraproject.org> 1.12.2-1
-- update to 1.12.2
+- update to 1.12.2 (beta)
- drop merged patches
- install doc in pecl doc_dir
- install tests in pecl test_dir
diff --git a/zip-upstream.patch b/zip-upstream.patch
deleted file mode 100644
index 38e9733..0000000
--- a/zip-upstream.patch
+++ /dev/null
@@ -1,205 +0,0 @@
-From 746f8a1b4501ae6c364fc531f46fbab3bfd51d1d Mon Sep 17 00:00:00 2001
-From: Remi Collet <fedora@famillecollet.com>
-Date: Wed, 23 Oct 2013 11:12:52 +0200
-Subject: [PATCH] clean 1 use of private lilbzip structure (stay 1)
-
-add a "doubleclose" test to check than nothing wrong occurs
-zip_discard already test is zp is open
----
- php_zip.c | 10 ++--------
- tests/doubleclose.phpt | 43 +++++++++++++++++++++++++++++++++++++++++++
- 3 files changed, 47 insertions(+), 9 deletions(-)
- create mode 100644 tests/doubleclose.phpt
-
-diff --git a/php_zip.c b/php_zip.c
-index 8943d32..280ef3e 100644
---- a/php_zip.c
-+++ b/php_zip.c
-@@ -1609,7 +1609,7 @@ static ZIPARCHIVE_METHOD(close)
- ze_zip_object *ze_obj;
-
- if (!this) {
-- RETURN_FALSE;
-+ RETURN_FALSE;
- }
-
- ZIP_FROM_OBJECT(intern, this);
-@@ -1617,13 +1617,7 @@ static ZIPARCHIVE_METHOD(close)
- ze_obj = (ze_zip_object*) zend_object_store_get_object(this TSRMLS_CC);
-
- if (zip_close(intern)) {
-- /* archive already closed*/
-- if (intern->zp != NULL) {
-- zip_discard(intern);
-- RETVAL_TRUE;
-- } else {
-- RETURN_FALSE;
-- }
-+ zip_discard(intern);
- }
-
- efree(ze_obj->filename);
-diff --git a/tests/doubleclose.phpt b/tests/doubleclose.phpt
-new file mode 100644
-index 0000000..abc62c8
---- /dev/null
-+++ b/tests/doubleclose.phpt
-@@ -0,0 +1,43 @@
-+--TEST--
-+close() called twice
-+--SKIPIF--
-+<?php
-+if(!extension_loaded('zip')) die('skip');
-+?>
-+--FILE--
-+<?php
-+
-+echo "Procedural\n";
-+$zip = zip_open(dirname(__FILE__) . '/test.zip');
-+if (!is_resource($zip)) {
-+ die("Failure");
-+ }
-+var_dump(zip_close($zip));
-+var_dump(zip_close($zip));
-+
-+echo "Object\n";
-+$zip = new ZipArchive();
-+if (!$zip->open(dirname(__FILE__) . '/test.zip')) {
-+ die('Failure');
-+}
-+if ($zip->status == ZIPARCHIVE::ER_OK) {
-+ var_dump($zip->close());
-+ var_dump($zip->close());
-+} else {
-+ die("Failure");
-+}
-+
-+?>
-+Done
-+--EXPECTF--
-+Procedural
-+NULL
-+
-+Warning: zip_close(): %i is not a valid Zip Directory resource in %s
-+bool(false)
-+Object
-+bool(true)
-+
-+Warning: ZipArchive::close(): Invalid or uninitialized Zip object in %s
-+bool(false)
-+Done
---
-1.8.4
-
-From 5175272e369ba7b781682dfb1a32f4e41c5a28a1 Mon Sep 17 00:00:00 2001
-From: Remi Collet <fedora@famillecollet.com>
-Date: Wed, 23 Oct 2013 13:54:10 +0200
-Subject: [PATCH] add a test to check double call to zip_entry_close
-
----
- tests/zip_entry_close.phpt | 24 ++++++++++++++++++++++++
- 1 file changed, 24 insertions(+)
- create mode 100644 tests/zip_entry_close.phpt
-
-diff --git a/tests/zip_entry_close.phpt b/tests/zip_entry_close.phpt
-new file mode 100644
-index 0000000..82b7819
---- /dev/null
-+++ b/tests/zip_entry_close.phpt
-@@ -0,0 +1,24 @@
-+--TEST--
-+zip_entry_close() function: simple and double call
-+--SKIPIF--
-+<?php
-+/* $Id$ */
-+if(!extension_loaded('zip')) die('skip');
-+?>
-+--FILE--
-+<?php
-+$zip = zip_open(dirname(__FILE__)."/test_procedural.zip");
-+$entry = zip_read($zip);
-+echo "entry_open: "; var_dump(zip_entry_open($zip, $entry, "r"));
-+echo "entry_close: "; var_dump(zip_entry_close($entry));
-+echo "entry_close: "; var_dump(zip_entry_close($entry));
-+zip_close($zip);
-+?>
-+Done
-+--EXPECTF--
-+entry_open: bool(true)
-+entry_close: bool(true)
-+entry_close:
-+Warning: zip_entry_close(): %d is not a valid Zip Entry resource in %s
-+bool(false)
-+Done
---
-1.8.4
-
-From 229d87088b5cdd471bcd63d132c7a6af55013b2f Mon Sep 17 00:00:00 2001
-From: Remi Collet <fedora@famillecollet.com>
-Date: Thu, 24 Oct 2013 11:46:44 +0200
-Subject: [PATCH] clean all uses of private libzip structure move check from
- NULL deref from php ext to in libzip
-
-libzip patch is from upstream
-http://hg.nih.at/libzip?cs=a2f3bb7896c0
----
- lib/zip_fclose.c | 14 ++++++++------
- php_zip.c | 10 +---------
- 3 files changed, 10 insertions(+), 16 deletions(-)
-
-diff --git a/lib/zip_fclose.c b/lib/zip_fclose.c
-index 611db80..093c30e 100644
---- a/lib/zip_fclose.c
-+++ b/lib/zip_fclose.c
-@@ -48,12 +48,14 @@
- if (zf->src)
- zip_source_free(zf->src);
-
-- for (i=0; i<zf->za->nfile; i++) {
-- if (zf->za->file[i] == zf) {
-- zf->za->file[i] = zf->za->file[zf->za->nfile-1];
-- zf->za->nfile--;
-- break;
-- }
-+ if (zf->za) {
-+ for (i=0; i<zf->za->nfile; i++) {
-+ if (zf->za->file[i] == zf) {
-+ zf->za->file[i] = zf->za->file[zf->za->nfile-1];
-+ zf->za->nfile--;
-+ break;
-+ }
-+ }
- }
-
- ret = 0;
-diff --git a/php_zip.c b/php_zip.c
-index 280ef3e..c6591c9 100644
---- a/php_zip.c
-+++ b/php_zip.c
-@@ -30,8 +30,6 @@
- #include "ext/pcre/php_pcre.h"
- #include "ext/standard/php_filestat.h"
- #include "php_zip.h"
--/* Private struct definition, always use bundled copy */
--#include "lib/zipint.h"
-
- /* zip_open is a macro for renaming libzip zipopen, so we need to use PHP_NAMED_FUNCTION */
- static PHP_NAMED_FUNCTION(zif_zip_open);
-@@ -1183,13 +1181,7 @@ static void php_zip_free_entry(zend_rsrc_list_entry *rsrc TSRMLS_DC)
-
- if (zr_rsrc) {
- if (zr_rsrc->zf) {
-- if (zr_rsrc->zf->za) {
-- zip_fclose(zr_rsrc->zf);
-- } else {
-- if (zr_rsrc->zf->src)
-- zip_source_free(zr_rsrc->zf->src);
-- free(zr_rsrc->zf);
-- }
-+ zip_fclose(zr_rsrc->zf);
- zr_rsrc->zf = NULL;
- }
- efree(zr_rsrc);
---
-1.8.4
-