Hi Paul,

Do you have any comments, please ?

// Robert

On 01/03/2018 01:42 PM, Robert Yang wrote:
The obsolete dependency is the one which is in database but not in
conf/layer.conf anymore. The old code had a problem for newly created
layerbranch, the new layerbranch has no dependencies, so no need remove. And it
had a side effect was that when need_remove was cleaned up, it would be set
again in the next for loop, thus might wrongly remove dependencies. This patch
can fix the problem.

Signed-off-by: Robert Yang <[email protected]>
---
  layerindex/utils.py | 6 ++----
  1 file changed, 2 insertions(+), 4 deletions(-)

diff --git a/layerindex/utils.py b/layerindex/utils.py
index e58d8f6..08a4001 100644
--- a/layerindex/utils.py
+++ b/layerindex/utils.py
@@ -122,7 +122,7 @@ def _add_dependency(var, name, layerbranch, config_data, 
logger=None, required=T
          logger.debug('Error parsing %s_%s for %s\n%s' % (var, var_name, 
layer_name, str(vse)))
          return
- need_remove = None
+    need_remove = 
LayerDependency.objects.filter(layerbranch=layerbranch).filter(required=required)
      for dep, ver_list in list(dep_dict.items()):
          ver_str = None
          if ver_list:
@@ -142,9 +142,7 @@ def _add_dependency(var, name, layerbranch, config_data, 
logger=None, required=T
                  continue
# Preparing to remove obsolete ones
-        if not need_remove:
-            need_remove = 
LayerDependency.objects.filter(layerbranch=layerbranch).filter(required=required).exclude(dependency=dep_layer)
-        else:
+        if need_remove:
              need_remove = need_remove.exclude(dependency=dep_layer)
# Skip existing entries.

--
_______________________________________________
yocto mailing list
[email protected]
https://lists.yoctoproject.org/listinfo/yocto

Reply via email to