cache: use path to code, not hardcoded relative path

closes #2350
This commit is contained in:
Willi Ballenthin
2024-09-11 11:28:04 +00:00
parent 729a1a85b7
commit 51d2ea147b
2 changed files with 6 additions and 1 deletions

View File

@@ -21,6 +21,7 @@ Unlock powerful malware analysis with capa's new [VMRay sandbox](https://www.vmr
### Bug Fixes
- fix duplicate features shown in vverbose mode @williballenthin #2323
- fix code path reference in linter @williballenthin #2350
### capa explorer IDA Pro plugin

View File

@@ -352,7 +352,11 @@ def is_cache_newer_than_rule_code(cache_dir: Path) -> bool:
cache_timestamp = os.path.getmtime(latest_cache_file)
# these are the relevant rules code files that could conflict with using an outdated cache
latest_rule_code_file = max([Path("capa/rules/__init__.py"), Path("capa/rules/cache.py")], key=os.path.getmtime)
# delayed import due to circular dependencies
import capa.rules
import capa.rules.cache
latest_rule_code_file = max([Path(capa.rules.__file__), Path(capa.rules.cache.__file__)], key=os.path.getmtime)
rule_code_timestamp = os.path.getmtime(latest_rule_code_file)
if rule_code_timestamp > cache_timestamp: