mirror of
https://github.com/shivammathur/setup-php.git
synced 2026-09-20 10:51:29 +00:00
Cache replaced Windows extensions by their installed version
This commit is contained in:
@@ -144,8 +144,10 @@ Function Add-Extension {
|
|||||||
}
|
}
|
||||||
# If extension for a different version exists
|
# If extension for a different version exists
|
||||||
if(Test-Path $ext_dir\php_$extension.dll) {
|
if(Test-Path $ext_dir\php_$extension.dll) {
|
||||||
Move-Item $ext_dir\php_$extension.dll $ext_dir\php_$extension.bak.dll -Force -ErrorAction Stop
|
# Keep backups outside PhpManager's DLL scan and reuse known versions as cache entries.
|
||||||
$extension_backup = "$ext_dir\php_$extension.bak.dll"
|
$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
|
Install-PhpExtension @params
|
||||||
Set-ExtensionPrerequisites $extension
|
Set-ExtensionPrerequisites $extension
|
||||||
@@ -157,7 +159,7 @@ Function Add-Extension {
|
|||||||
}
|
}
|
||||||
} catch {
|
} catch {
|
||||||
if($extension_backup -ne '') {
|
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 )"
|
Add-Log $cross $extension "Could not install $extension on PHP $( $installed.FullVersion )"
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user