pkgship/0010-fix-bedepend-data-error.patch
2021-04-08 20:45:41 +08:00

30 lines
1.4 KiB
Diff

diff --git a/packageship/application/core/depend/be_depend.py b/packageship/application/core/depend/be_depend.py
index 04f5b02..06dbd44 100644
--- a/packageship/application/core/depend/be_depend.py
+++ b/packageship/application/core/depend/be_depend.py
@@ -45,6 +45,7 @@ class BeDepend(BaseDepend):
searched_pkg.add(pkg_info.get("src_name"))
binary_pkgs.update(set(pkg_info.get("subpacks", [])))
+ self._search_set.update(searched_pkg)
if is_init:
not_found_pkg = str(set(pkg_name_lst) - searched_pkg)
self.log_msg = f"source packages {not_found_pkg} not found in {self.database}"
@@ -158,6 +159,8 @@ class BeDepend(BaseDepend):
"""
next_search_pkgs = set()
src_key = req_src_info["req_src_name"]
+ if src_key not in self._search_set:
+ next_search_pkgs.update(self.__get_subpacks([src_key]))
if src_key not in self.source_dict:
self.source_dict[src_key] = {
"name": src_key,
@@ -165,7 +168,6 @@ class BeDepend(BaseDepend):
"database": self.database,
"build": [dep_name],
}
- next_search_pkgs.update(self.__get_subpacks([src_key]))
else:
if dep_name not in self.source_dict[src_key]["build"]:
self.source_dict[src_key]["build"].append(dep_name)