mirror of
https://github.com/dockur/windows.git
synced 2026-08-05 21:47:16 +01:00
fix: Improve image edition detection (#2061)
This commit is contained in:
@@ -80,6 +80,23 @@ getVersions() {
|
|||||||
|
|
||||||
done
|
done
|
||||||
|
|
||||||
|
# Preserve NAME precedence, but allow a recognized DISPLAYNAME edition to
|
||||||
|
# refine an otherwise generic family name.
|
||||||
|
if [ -n "$candidate_base" ] && [ -n "$candidate_id" ] && [ -n "$display" ]; then
|
||||||
|
name=$(normalizeEdition "$(printVersion "$candidate_base" "")") || return 1
|
||||||
|
candidate=$(normalizeEdition "$candidate") || return 1
|
||||||
|
|
||||||
|
if [ "$candidate" = "$name" ]; then
|
||||||
|
structured=$(getVersion "$display" "$platform")
|
||||||
|
|
||||||
|
if [ "$(fromName "$display" "$platform")" = "$candidate_base" ] &&
|
||||||
|
[ -n "$structured" ] && [[ "${structured%-eval}" != "$candidate_base" ]] &&
|
||||||
|
[[ "$(getVersionPriority "$structured" "$candidate_base")" != "other" ]]; then
|
||||||
|
candidate_id="$structured"
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
if [ -z "$candidate_base" ] || [ -z "$candidate_id" ]; then
|
if [ -z "$candidate_base" ] || [ -z "$candidate_id" ]; then
|
||||||
|
|
||||||
name="${display:-${image:-$product}}"
|
name="${display:-${image:-$product}}"
|
||||||
|
|||||||
+5
-3
@@ -338,12 +338,14 @@ skipUnattended() {
|
|||||||
|
|
||||||
# Standalone ESD files and nested archives are not directly bootable media,
|
# Standalone ESD files and nested archives are not directly bootable media,
|
||||||
# so they cannot use the manual-install fallback.
|
# so they cannot use the manual-install fallback.
|
||||||
[[ "${iso,,}" == *".esd" ]] && exit 60
|
if enabled "${UNPACK:-}" || [[ "${iso,,}" == *".esd" ]]; then
|
||||||
enabled "${UNPACK:-}" && exit 60
|
error "Failed to boot \"$iso\" because it is not a directly bootable ISO image!"
|
||||||
|
exit 60
|
||||||
|
fi
|
||||||
|
|
||||||
# When automatic preparation fails, inspect extracted media to determine
|
# When automatic preparation fails, inspect extracted media to determine
|
||||||
# whether it can still be booted manually using legacy firmware.
|
# whether it can still be booted manually using legacy firmware.
|
||||||
if [[ "${PLATFORM,,}" == "x64" ]] && [ -d "$dir" ]; then
|
if enabled "$aborted" && [[ "${PLATFORM,,}" == "x64" ]] && [ -d "$dir" ]; then
|
||||||
|
|
||||||
efi=$(find "$dir" -maxdepth 1 -type d -iname efi -print -quit) || return 1
|
efi=$(find "$dir" -maxdepth 1 -type d -iname efi -print -quit) || return 1
|
||||||
efi32=$(find "$dir" -maxdepth 3 -type f -ipath '*/efi/boot/bootia32.efi' -print -quit) || return 1
|
efi32=$(find "$dir" -maxdepth 3 -type f -ipath '*/efi/boot/bootia32.efi' -print -quit) || return 1
|
||||||
|
|||||||
Reference in New Issue
Block a user