pajoye Wed Nov 15 19:14:02 2006 UTC
Modified files: (Branch: PHP_5_2)
/php-src/ext/zip/lib zip_close.c zip_open.c zip_source_file.c
Log:
#9278 and #39506, force the binary mode for the zip operation only. At least
I do not have to set/restore it in each function.
http://cvs.php.net/viewvc.cgi/php-src/ext/zip/lib/zip_close.c?r1=1.1.2.3&r2=1.1.2.4&diff_format=u
Index: php-src/ext/zip/lib/zip_close.c
diff -u php-src/ext/zip/lib/zip_close.c:1.1.2.3
php-src/ext/zip/lib/zip_close.c:1.1.2.4
--- php-src/ext/zip/lib/zip_close.c:1.1.2.3 Sat Nov 11 19:06:56 2006
+++ php-src/ext/zip/lib/zip_close.c Wed Nov 15 19:14:02 2006
@@ -548,6 +548,9 @@
free(temp);
return NULL;
}
+#ifdef PHP_WIN32
+ _setmode(_fileno(tfp), _O_BINARY );
+#endif
*outp = tfp;
return temp;
http://cvs.php.net/viewvc.cgi/php-src/ext/zip/lib/zip_open.c?r1=1.1.2.2&r2=1.1.2.3&diff_format=u
Index: php-src/ext/zip/lib/zip_open.c
diff -u php-src/ext/zip/lib/zip_open.c:1.1.2.2
php-src/ext/zip/lib/zip_open.c:1.1.2.3
--- php-src/ext/zip/lib/zip_open.c:1.1.2.2 Wed Nov 15 16:24:24 2006
+++ php-src/ext/zip/lib/zip_open.c Wed Nov 15 19:14:02 2006
@@ -75,10 +75,6 @@
return NULL;
}
-#ifdef PHP_WIN32
- _fmode = _O_BINARY;
-#endif
-
if (flags & ZIP_OVERWRITE || stat(fn, &st) != 0) {
if ((flags & ZIP_CREATE) || (flags & ZIP_OVERWRITE)) {
if ((za=_zip_new(&error)) == NULL) {
@@ -104,7 +100,6 @@
return NULL;
}
-
/* ZIP_CREATE gets ignored if file exists and not ZIP_EXCL,
just like open() */
if ((fp=fopen(fn, "rb")) == NULL) {
@@ -112,6 +107,10 @@
return NULL;
}
+#ifdef PHP_WIN32
+ _setmode(_fileno(fp), _O_BINARY );
+#endif
+
clearerr(fp);
fseek(fp, 0, SEEK_END);
len = ftell(fp);
http://cvs.php.net/viewvc.cgi/php-src/ext/zip/lib/zip_source_file.c?r1=1.1&r2=1.1.2.1&diff_format=u
Index: php-src/ext/zip/lib/zip_source_file.c
diff -u php-src/ext/zip/lib/zip_source_file.c:1.1
php-src/ext/zip/lib/zip_source_file.c:1.1.2.1
--- php-src/ext/zip/lib/zip_source_file.c:1.1 Mon Jul 24 16:58:58 2006
+++ php-src/ext/zip/lib/zip_source_file.c Wed Nov 15 19:14:02 2006
@@ -62,6 +62,10 @@
return NULL;
}
+#ifdef PHP_WIN32
+ _setmode(_fileno(fp), _O_BINARY );
+#endif
+
if ((zs=zip_source_filep(za, fp, start, len)) == NULL) {
fclose(fp);
return NULL;
--
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php