From 694d5b5317b426c6c404383990e1bfbc2873c069 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Emanuel=20Kom=C3=ADnek?= Date: Tue, 20 Oct 2026 09:33:40 +0200 Subject: [PATCH] Fix TypeError when widevine manifest lacks architecture metadata When using a system/distribution-provided Widevine CDM (e.g. Debian/Raspberry Pi OS libwidevinecdm0 package where cdm_from_repo() is True), the manifest.json does not contain ChromeOS-specific 'accept_arch', 'platforms', or 'arch' keys. In this case, load_widevine_config() returns a dict without arch info and wv_config_arch resolves to None. Evaluating `... not in None` raised: TypeError: argument of type 'NoneType' is not iterable Add a null check so that architecture verification is safely skipped when no arch metadata is present in the manifest. --- lib/inputstreamhelper/__init__.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/inputstreamhelper/__init__.py b/lib/inputstreamhelper/__init__.py index 383f9938..680cb493 100644 --- a/lib/inputstreamhelper/__init__.py +++ b/lib/inputstreamhelper/__init__.py @@ -361,7 +361,7 @@ def _check_widevine(self): wv_config_arch = wv_config.get('platforms')[0].get('arch') else: wv_config_arch = wv_config.get('arch') - if config.WIDEVINE_ARCH_MAP_REPO[arch()] not in wv_config_arch: + if wv_config_arch and config.WIDEVINE_ARCH_MAP_REPO[arch()] not in wv_config_arch: log(4, 'Widevine/system arch mismatch. Reinstall is required.') ok_dialog(localize(30001), localize(30031)) # An update of Widevine is required return self.install_widevine()