diff --git a/src/cascadia/TerminalSettingsModel/CascadiaSettings.cpp b/src/cascadia/TerminalSettingsModel/CascadiaSettings.cpp
index 9dc2c156f2e..1528b97a4ee 100644
--- a/src/cascadia/TerminalSettingsModel/CascadiaSettings.cpp
+++ b/src/cascadia/TerminalSettingsModel/CascadiaSettings.cpp
@@ -499,9 +499,14 @@ static bool _validateSingleMediaResource(std::wstring_view resource)
return false;
}
- const auto scheme{ resourceUri.SchemeName() };
- // Only file: URIs and ms-* URIs are permissible. http, https, ftp, gopher, etc. are not.
- return til::equals_insensitive_ascii(scheme, L"file") || til::starts_with_insensitive_ascii(scheme, L"ms-");
+ if constexpr (Feature_DisableWebSourceIcons::IsEnabled())
+ {
+ const auto scheme{ resourceUri.SchemeName() };
+ // Only file: URIs and ms-* URIs are permissible. http, https, ftp, gopher, etc. are not.
+ return til::equals_insensitive_ascii(scheme, L"file") || til::starts_with_insensitive_ascii(scheme, L"ms-");
+ }
+
+ return true;
}
catch (...)
{
diff --git a/src/features.xml b/src/features.xml
index 894875ecd58..d5c79421040 100644
--- a/src/features.xml
+++ b/src/features.xml
@@ -202,4 +202,15 @@
+
+ Feature_DisableWebSourceIcons
+ Disables icon paths that make web requests
+ 19075
+ AlwaysDisabled
+
+ Dev
+ Canary
+
+
+