From e89e159b18cc9f32a0a4a818d080eb6a63d888a7 Mon Sep 17 00:00:00 2001 From: Steve Dower Date: Mon, 9 Dec 2019 08:43:13 -0800 Subject: [PATCH] Fix APPX registry key generation (GH-17489) --- PC/layout/support/appxmanifest.py | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/PC/layout/support/appxmanifest.py b/PC/layout/support/appxmanifest.py index 9e008f793cf..9a7439d0271 100644 --- a/PC/layout/support/appxmanifest.py +++ b/PC/layout/support/appxmanifest.py @@ -339,7 +339,17 @@ def _get_registry_entries(ns, root="", d=None): for key, value in d.items(): if key == "_condition": continue - elif isinstance(value, dict): + if value is SPECIAL_LOOKUP: + if key == "SysArchitecture": + value = { + "win32": "32bit", + "amd64": "64bit", + "arm32": "32bit", + "arm64": "64bit", + }[ns.arch] + else: + raise ValueError(f"Key '{key}' unhandled for special lookup") + if isinstance(value, dict): cond = value.get("_condition") if cond and not cond(ns): continue @@ -349,16 +359,6 @@ def _get_registry_entries(ns, root="", d=None): if len(fullkey.parts) > 1: yield str(fullkey), None, None yield from _get_registry_entries(ns, fullkey, value) - elif value is SPECIAL_LOOKUP: - if key == "SysArchitecture": - return { - "win32": "32bit", - "amd64": "64bit", - "arm32": "32bit", - "arm64": "64bit", - }[ns.arch] - else: - raise ValueError(f"Key '{key}' unhandled for special lookup") elif len(r.parts) > 1: yield str(r), key, value