From 9efdfe0de42319783f0fb86c8c7c45f500925748 Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Fri, 18 Sep 2020 20:41:31 +0530 Subject: [PATCH] Fix processing of non-string key actions --- kitty/open_actions.py | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/kitty/open_actions.py b/kitty/open_actions.py index 1fa1830b5..c09147682 100644 --- a/kitty/open_actions.py +++ b/kitty/open_actions.py @@ -7,7 +7,9 @@ import os import posixpath from contextlib import suppress from functools import lru_cache -from typing import Generator, Iterable, List, NamedTuple, Optional, Tuple, cast +from typing import ( + Any, Generator, Iterable, List, NamedTuple, Optional, Tuple, cast +) from urllib.parse import ParseResult, unquote, urlparse from .conf.utils import to_bool, to_cmdline @@ -152,8 +154,10 @@ def actions_for_url_from_list(url: str, actions: Iterable[OpenAction]) -> Genera 'FRAGMENT': purl.fragment } - def expand(x: str) -> str: - return expandvars(x, env, fallback_to_os_env=False) + def expand(x: Any) -> Any: + if isinstance(x, str): + return expandvars(x, env, fallback_to_os_env=False) + return x for action in actions: if url_matches_criteria(purl, url, action.match_criteria):