From 7a3b0d6ddb86f9321ea59d9d57de82163e027e61 Mon Sep 17 00:00:00 2001 From: Paul Gauthier Date: Tue, 2 Jul 2024 19:59:03 -0300 Subject: [PATCH] handle oserrors when enumerating repo files #780 --- aider/coders/base_coder.py | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/aider/coders/base_coder.py b/aider/coders/base_coder.py index 22694cf1e..76d3fa4f3 100755 --- a/aider/coders/base_coder.py +++ b/aider/coders/base_coder.py @@ -1223,13 +1223,19 @@ class Coder: files = [self.get_rel_fname(fname) for fname in self.abs_fnames] return sorted(set(files)) + def is_file_safe(self, fname): + try: + return Path(self.abs_root_path(fname)).is_file() + except OSError: + return + def get_all_relative_files(self): if self.repo: files = self.repo.get_tracked_files() else: files = self.get_inchat_relative_files() - files = [fname for fname in files if Path(self.abs_root_path(fname)).is_file()] + files = [fname for fname in files if self.is_file_safe(fname)] return sorted(set(files)) def get_all_abs_files(self):