]> granicus.if.org Git - php/commitdiff
re-organize slightly, fix more php6-only compile warnings in php_stream_copy_to_mem
authorGreg Beaver <cellog@php.net>
Sun, 26 Jul 2009 01:03:47 +0000 (01:03 +0000)
committerGreg Beaver <cellog@php.net>
Sun, 26 Jul 2009 01:03:47 +0000 (01:03 +0000)
ext/phar/phar.c
ext/phar/phar_internal.h
ext/phar/phar_object.c
ext/phar/tar.c
ext/phar/zip.c

index 877a6663c98679346214c98f8d8c17d3832bbf50..9ea3756709101f28667f55e61de87b2079efa552 100644 (file)
@@ -2647,7 +2647,11 @@ int phar_flush(phar_archive_data *phar, char *user_stub, long len, int convert,
                                len = -len;
                        }
                        user_stub = 0;
+#if PHP_MAJOR_VERSION >= 6
+                       if (!(len = php_stream_copy_to_mem(stubfile, (void **) &user_stub, len, 0)) || !user_stub) {
+#else
                        if (!(len = php_stream_copy_to_mem(stubfile, &user_stub, len, 0)) || !user_stub) {
+#endif
                                if (closeoldfile) {
                                        php_stream_close(oldfile);
                                }
index 7ebba2e51321b99451e281afa272d966ef1e3e30..83f072eca3672ae4d48cc1b8a69f70e96ce89238 100755 (executable)
@@ -546,6 +546,38 @@ typedef zstr phar_zstr;
        b = ZSTR(a);
 #define PHAR_STR_FREE(a) \
        efree(a);
+static inline int phar_make_unicode(zstr *c_var, char *arKey, uint nKeyLength TSRMLS_DC)
+{
+       int c_var_len;
+       UConverter *conv = ZEND_U_CONVERTER(UG(runtime_encoding_conv));
+
+       c_var->u = NULL;
+       if (zend_string_to_unicode(conv, &c_var->u, &c_var_len, arKey, nKeyLength TSRMLS_CC) == FAILURE) {
+
+               if (c_var->u) {
+                       efree(c_var->u);
+               }
+               return 0;
+
+       }
+       return c_var_len;
+}
+static inline int phar_find_key(HashTable *_SERVER, char *key, int len, void **stuff TSRMLS_DC)
+{
+       if (SUCCESS == zend_hash_find(_SERVER, key, len, stuff)) {
+               return 1;
+       } else {
+               int s = len;
+               zstr var;
+               s = phar_make_unicode(&var, key, len TSRMLS_CC);
+               if (SUCCESS == zend_u_hash_find(_SERVER, IS_UNICODE, var, s, stuff)) {
+                       efree(var.u);
+                       return 1;
+               }
+               efree(var.u);
+               return 0;
+       }
+}
 #else
 typedef char *phar_zstr;
 #define PHAR_STR(a, b) \
index f5b89c873b1f461abb3943ff15f6545561c083bb..e908ad1d810ab199fe19449747ed8d7e0c45a660 100755 (executable)
@@ -56,40 +56,6 @@ static int phar_file_type(HashTable *mimes, char *file, char **mime_type TSRMLS_
 }
 /* }}} */
 
-#if PHP_MAJOR_VERSION >= 6
-static inline int phar_make_unicode(zstr *c_var, char *arKey, uint nKeyLength TSRMLS_DC)
-{
-       int c_var_len;
-       UConverter *conv = ZEND_U_CONVERTER(UG(runtime_encoding_conv));
-
-       c_var->u = NULL;
-       if (zend_string_to_unicode(conv, &c_var->u, &c_var_len, arKey, nKeyLength TSRMLS_CC) == FAILURE) {
-
-               if (c_var->u) {
-                       efree(c_var->u);
-               }
-               return 0;
-
-       }
-       return c_var_len;
-}
-static inline int phar_find_key(HashTable *_SERVER, char *key, int len, void **stuff TSRMLS_DC)
-{
-       if (SUCCESS == zend_hash_find(_SERVER, key, len, stuff)) {
-               return 1;
-       } else {
-               int s = len;
-               zstr var;
-               s = phar_make_unicode(&var, key, len TSRMLS_CC);
-               if (SUCCESS == zend_u_hash_find(_SERVER, IS_UNICODE, var, s, stuff)) {
-                       efree(var.u);
-                       return 1;
-               }
-               efree(var.u);
-               return 0;
-       }
-}
-#endif
 static void phar_mung_server_vars(char *fname, char *entry, int entry_len, char *basename, int request_uri_len TSRMLS_DC) /* {{{ */
 {
 #if PHP_MAJOR_VERSION >= 6
index afc22d78084145dedef13ab2b00ac885175a4752..383356fb93b8b2f11244487a1f670265b3cbaedb 100644 (file)
@@ -928,7 +928,11 @@ int phar_tar_flush(phar_archive_data *phar, char *user_stub, long len, int defau
                                len = -len;
                        }
                        user_stub = 0;
+#if PHP_MAJOR_VERSION >= 6
+                       if (!(len = php_stream_copy_to_mem(stubfile, (void **) &user_stub, len, 0)) || !user_stub) {
+#else
                        if (!(len = php_stream_copy_to_mem(stubfile, &user_stub, len, 0)) || !user_stub) {
+#endif
                                if (error) {
                                        spprintf(error, 0, "unable to read resource to copy stub to new tar-based phar \"%s\"", phar->fname);
                                }
index 3086a03b10bbfd37e3be7d2e7c04a0b1f5ea8802..383561ab87c997dabd6b33575cb8e47c51729641 100644 (file)
@@ -600,7 +600,11 @@ foundit:
 
                                php_stream_filter_append(&fp->readfilters, filter);
 
+#if PHP_MAJOR_VERSION >= 6
+                               if (!(entry.uncompressed_filesize = php_stream_copy_to_mem(fp, (void **) &actual_alias, entry.uncompressed_filesize, 0)) || !actual_alias) {
+#else
                                if (!(entry.uncompressed_filesize = php_stream_copy_to_mem(fp, &actual_alias, entry.uncompressed_filesize, 0)) || !actual_alias) {
+#endif
                                        pefree(entry.filename, entry.is_persistent);
 #if PHP_VERSION_ID < 50207
                                        PHAR_ZIP_FAIL("unable to read in alias, truncated (PHP 5.2.7 and newer has a potential fix for this problem)");
@@ -621,7 +625,11 @@ foundit:
 
                                php_stream_filter_append(&fp->readfilters, filter);
 
+#if PHP_MAJOR_VERSION >= 6
+                               if (!(entry.uncompressed_filesize = php_stream_copy_to_mem(fp, (void **) &actual_alias, entry.uncompressed_filesize, 0)) || !actual_alias) {
+#else
                                if (!(entry.uncompressed_filesize = php_stream_copy_to_mem(fp, &actual_alias, entry.uncompressed_filesize, 0)) || !actual_alias) {
+#endif
                                        pefree(entry.filename, entry.is_persistent);
 #if PHP_VERSION_ID < 50207
                                        PHAR_ZIP_FAIL("unable to read in alias, truncated (PHP 5.2.7 and newer has a potential fix for this problem)");
@@ -632,7 +640,11 @@ foundit:
                                php_stream_filter_flush(filter, 1);
                                php_stream_filter_remove(filter, 1 TSRMLS_CC);
                        } else {
+#if PHP_MAJOR_VERSION >= 6
+                               if (!(entry.uncompressed_filesize = php_stream_copy_to_mem(fp, (void **) &actual_alias, entry.uncompressed_filesize, 0)) || !actual_alias) {
+#else
                                if (!(entry.uncompressed_filesize = php_stream_copy_to_mem(fp, &actual_alias, entry.uncompressed_filesize, 0)) || !actual_alias) {
+#endif
                                        pefree(entry.filename, entry.is_persistent);
                                        PHAR_ZIP_FAIL("unable to read in alias, truncated");
                                }
@@ -1234,7 +1246,11 @@ int phar_zip_flush(phar_archive_data *phar, char *user_stub, long len, int defau
 
                        user_stub = 0;
 
+#if PHP_MAJOR_VERSION >= 6
+                       if (!(len = php_stream_copy_to_mem(stubfile, (void **) &user_stub, len, 0)) || !user_stub) {
+#else
                        if (!(len = php_stream_copy_to_mem(stubfile, &user_stub, len, 0)) || !user_stub) {
+#endif
                                if (error) {
                                        spprintf(error, 0, "unable to read resource to copy stub to new zip-based phar \"%s\"", phar->fname);
                                }