Commit 9e2841de6aa for php.net

commit 9e2841de6aaa676944f86d5f64aae0fa601059f2
Author: Gina Peter Banyard <girgias@php.net>
Date:   Thu Apr 23 20:41:26 2026 +0100

    ext/phar: reorganize if branches as content is identical

    Just check in advance if we don't have an archive to checkin in the manifest cache.

diff --git a/ext/phar/util.c b/ext/phar/util.c
index f493cc3acee..5057252a601 100644
--- a/ext/phar/util.c
+++ b/ext/phar/util.c
@@ -1088,18 +1088,13 @@ zend_result phar_get_archive(phar_archive_data **archive, const char *fname, siz
 		}

 		fd_ptr = zend_hash_str_find_ptr(&(PHAR_G(phar_alias_map)), fname, fname_len);
-		if (fd_ptr) {
-			fd = *archive = fd_ptr;
-
-			PHAR_G(last_phar) = fd;
-			PHAR_G(last_phar_name) = fd->fname;
-			PHAR_G(last_alias) = fd->alias;
-			PHAR_G(last_alias_len) = fd->alias_len;

-			return SUCCESS;
+		/* If we didn't find the fname in the alias map, check in the cached manifest to see if we can find it */
+		if (!fd_ptr && PHAR_G(manifest_cached)) {
+			fd_ptr = zend_hash_str_find_ptr(&cached_alias, fname, fname_len);
 		}

-		if (PHAR_G(manifest_cached) && NULL != (fd_ptr = zend_hash_str_find_ptr(&cached_alias, fname, fname_len))) {
+		if (fd_ptr) {
 			fd = *archive = fd_ptr;

 			PHAR_G(last_phar) = fd;