summaryrefslogtreecommitdiff
path: root/ext/phar/phar_object.c
diff options
context:
space:
mode:
Diffstat (limited to 'ext/phar/phar_object.c')
-rw-r--r--ext/phar/phar_object.c36
1 files changed, 20 insertions, 16 deletions
diff --git a/ext/phar/phar_object.c b/ext/phar/phar_object.c
index 9af857bf93..ccacf806d1 100644
--- a/ext/phar/phar_object.c
+++ b/ext/phar/phar_object.c
@@ -1278,17 +1278,17 @@ PHP_METHOD(Phar, getSupportedSignatures)
array_init(return_value);
- add_next_index_stringl(return_value, "MD5", 3, 1);
- add_next_index_stringl(return_value, "SHA-1", 5, 1);
+ add_next_index_stringl(return_value, "MD5", 3);
+ add_next_index_stringl(return_value, "SHA-1", 5);
#ifdef PHAR_HASH_OK
- add_next_index_stringl(return_value, "SHA-256", 7, 1);
- add_next_index_stringl(return_value, "SHA-512", 7, 1);
+ add_next_index_stringl(return_value, "SHA-256", 7);
+ add_next_index_stringl(return_value, "SHA-512", 7);
#endif
#if PHAR_HAVE_OPENSSL
- add_next_index_stringl(return_value, "OpenSSL", 7, 1);
+ add_next_index_stringl(return_value, "OpenSSL", 7);
#else
if (zend_hash_exists(&module_registry, "openssl", sizeof("openssl"))) {
- add_next_index_stringl(return_value, "OpenSSL", 7, 1);
+ add_next_index_stringl(return_value, "OpenSSL", 7);
}
#endif
}
@@ -1307,11 +1307,11 @@ PHP_METHOD(Phar, getSupportedCompression)
phar_request_initialize(TSRMLS_C);
if (PHAR_G(has_zlib)) {
- add_next_index_stringl(return_value, "GZ", 2, 1);
+ add_next_index_stringl(return_value, "GZ", 2);
}
if (PHAR_G(has_bz2)) {
- add_next_index_stringl(return_value, "BZIP2", 5, 1);
+ add_next_index_stringl(return_value, "BZIP2", 5);
}
}
/* }}} */
@@ -1716,7 +1716,9 @@ after_open_fp:
php_stream_close(fp);
}
- add_assoc_string(p_obj->ret, str_key, opened, 0);
+ // TODO: avoid reallocation ???
+ add_assoc_string(p_obj->ret, str_key, opened);
+ efree(opened);
if (save) {
efree(save);
@@ -3085,26 +3087,28 @@ PHP_METHOD(Phar, getSignature)
int unknown_len;
array_init(return_value);
- add_assoc_stringl(return_value, "hash", phar_obj->arc.archive->signature, phar_obj->arc.archive->sig_len, 1);
+ add_assoc_stringl(return_value, "hash", phar_obj->arc.archive->signature, phar_obj->arc.archive->sig_len);
switch(phar_obj->arc.archive->sig_flags) {
case PHAR_SIG_MD5:
- add_assoc_stringl(return_value, "hash_type", "MD5", 3, 1);
+ add_assoc_stringl(return_value, "hash_type", "MD5", 3);
break;
case PHAR_SIG_SHA1:
- add_assoc_stringl(return_value, "hash_type", "SHA-1", 5, 1);
+ add_assoc_stringl(return_value, "hash_type", "SHA-1", 5);
break;
case PHAR_SIG_SHA256:
- add_assoc_stringl(return_value, "hash_type", "SHA-256", 7, 1);
+ add_assoc_stringl(return_value, "hash_type", "SHA-256", 7);
break;
case PHAR_SIG_SHA512:
- add_assoc_stringl(return_value, "hash_type", "SHA-512", 7, 1);
+ add_assoc_stringl(return_value, "hash_type", "SHA-512", 7);
break;
case PHAR_SIG_OPENSSL:
- add_assoc_stringl(return_value, "hash_type", "OpenSSL", 7, 1);
+ add_assoc_stringl(return_value, "hash_type", "OpenSSL", 7);
break;
default:
unknown_len = spprintf(&unknown, 0, "Unknown (%u)", phar_obj->arc.archive->sig_flags);
- add_assoc_stringl(return_value, "hash_type", unknown, unknown_len, 0);
+ // TODO: avoid reallocation ???
+ add_assoc_stringl(return_value, "hash_type", unknown, unknown_len);
+ efree(unknown);
break;
}
} else {