From 25618cc48e863aa0b840b271ad42ba6fcd51b789 Mon Sep 17 00:00:00 2001 From: Shivam Mathur Date: Wed, 16 Sep 2026 11:25:07 +0530 Subject: [PATCH] Cache replaced Windows extensions by their installed version --- src/scripts/extensions/add_extensions.ps1 | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/scripts/extensions/add_extensions.ps1 b/src/scripts/extensions/add_extensions.ps1 index 2158f68e..e1f72a02 100644 --- a/src/scripts/extensions/add_extensions.ps1 +++ b/src/scripts/extensions/add_extensions.ps1 @@ -144,8 +144,10 @@ Function Add-Extension { } # If extension for a different version exists if(Test-Path $ext_dir\php_$extension.dll) { - Move-Item $ext_dir\php_$extension.dll $ext_dir\php_$extension.bak.dll -Force -ErrorAction Stop - $extension_backup = "$ext_dir\php_$extension.bak.dll" + # Keep backups outside PhpManager's DLL scan and reuse known versions as cache entries. + $backup_name = if($extension_info.Version) { "$extension-$($extension_info.Version)" } else { "$extension.bak" } + Move-Item $ext_dir\php_$extension.dll "$ext_dir\$backup_name" -Force -ErrorAction Stop + $extension_backup = "$ext_dir\$backup_name" } Install-PhpExtension @params Set-ExtensionPrerequisites $extension @@ -157,7 +159,7 @@ Function Add-Extension { } } catch { if($extension_backup -ne '') { - Move-Item $extension_backup "$ext_dir\php_$extension.dll" -Force + Copy-Item $extension_backup "$ext_dir\php_$extension.dll" -Force } Add-Log $cross $extension "Could not install $extension on PHP $( $installed.FullVersion )" }