Jelmer Vernooij 3 месяцев назад
Родитель
Сommit
53efb04018
1 измененных файлов с 7 добавлено и 2 удалено
  1. 7 2
      dulwich/filters.py

+ 7 - 2
dulwich/filters.py

@@ -142,7 +142,7 @@ class ProcessFilterDriver:
     def _get_or_start_process(self) -> Optional["Protocol"]:
         """Get or start the long-running process filter."""
         if self._process is None and self.process_cmd:
-            from .errors import HangupException
+            from .errors import GitProtocolError, HangupException
             from .protocol import Protocol
 
             try:
@@ -216,7 +216,12 @@ class ProcessFilterDriver:
                     if cap.startswith(b"capability="):
                         self._capabilities.add(cap[11:])  # Remove "capability=" prefix
 
-            except (OSError, subprocess.SubprocessError, HangupException) as e:
+            except (
+                OSError,
+                subprocess.SubprocessError,
+                HangupException,
+                GitProtocolError,
+            ) as e:
                 self.cleanup()
                 raise FilterError(f"Failed to start process filter: {e}")
         return self._protocol