diff --git a/src/cascadia/TerminalSettingsModel/CascadiaSettings.cpp b/src/cascadia/TerminalSettingsModel/CascadiaSettings.cpp
index 2ac6305105..d0e4fbcf5f 100644
--- a/src/cascadia/TerminalSettingsModel/CascadiaSettings.cpp
+++ b/src/cascadia/TerminalSettingsModel/CascadiaSettings.cpp
@@ -483,9 +483,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 569acb9d6e..2636fc5a1f 100644
--- a/src/features.xml
+++ b/src/features.xml
@@ -197,4 +197,15 @@
+
+ Feature_DisableWebSourceIcons
+ Disables icon paths that make web requests
+ 19075
+ AlwaysDisabled
+
+ Dev
+ Canary
+
+
+