diff --git a/patches/helium/core/component-updates.patch b/patches/helium/core/component-updates.patch index 8e53fe32..70e199de 100644 --- a/patches/helium/core/component-updates.patch +++ b/patches/helium/core/component-updates.patch @@ -127,3 +127,35 @@ } std::string ChromeConfigurator::GetProdId() const { +--- a/components/component_updater/component_installer.cc ++++ b/components/component_updater/component_installer.cc +@@ -12,6 +12,7 @@ + #include + #include + ++#include "base/containers/fixed_flat_set.h" + #include "base/files/file_enumerator.h" + #include "base/files/file_path.h" + #include "base/files/file_util.h" +@@ -111,7 +112,21 @@ void ComponentInstaller::Register(Compon + + std::vector public_key_hash; + installer_policy_->GetHash(&public_key_hash); ++ ++ static constexpr auto kAllowedComponents = ++ base::MakeFixedFlatSet( ++ base::sorted_unique, ++ { ++ "hfnkpimlhhgieaddgfemjhofmfblmnib", // CRLSet ++ } ++ ); ++ + const auto crx_id = update_client::GetCrxIdFromPublicKeyHash(public_key_hash); ++ ++ if (!kAllowedComponents.contains(crx_id)) { ++ return; ++ } ++ + Register(base::BindOnce(&ComponentUpdateService::RegisterComponent, + base::Unretained(cus)), + std::move(callback), cus->GetRegisteredVersion(crx_id),