Commit c0d021216da for php.net
commit c0d021216da12080dbc01c5701f630cc5157c293
Author: Gina Peter Banyard <girgias@php.net>
Date: Tue Apr 21 16:53:18 2026 +0100
ext/phar: remove `phar_archive_data->alias == phar_archive_data->fname` checks (#21820)
The phar_archive_data->alias field is only ever assigned a newly allocated char* or NULL, as such it can never be equal to the phar_archive_data->fname field, thus those comparisons are just confusing.
diff --git a/ext/phar/phar.c b/ext/phar/phar.c
index 5829d32e615..4855517dd62 100644
--- a/ext/phar/phar.c
+++ b/ext/phar/phar.c
@@ -192,7 +192,7 @@ PHP_INI_END()
*/
void phar_destroy_phar_data(phar_archive_data *phar) /* {{{ */
{
- if (phar->alias && phar->alias != phar->fname) {
+ if (phar->alias) {
pefree(phar->alias, phar->is_persistent);
phar->alias = NULL;
}
diff --git a/ext/phar/phar_object.c b/ext/phar/phar_object.c
index 377f3583291..2e309d9a983 100644
--- a/ext/phar/phar_object.c
+++ b/ext/phar/phar_object.c
@@ -2631,7 +2631,7 @@ PHP_METHOD(Phar, getAlias)
PHAR_ARCHIVE_OBJECT();
- if (phar_obj->archive->alias && phar_obj->archive->alias != phar_obj->archive->fname) {
+ if (phar_obj->archive->alias) {
RETURN_STRINGL(phar_obj->archive->alias, phar_obj->archive->alias_len);
}
}