瀏覽代碼

Fix destruction leak

Samuel Thibault 12 年之前
父節點
當前提交
0d8ff300f5
共有 1 個文件被更改,包括 5 次插入3 次删除
  1. 5 3
      src/sched_policies/component_sched.c

+ 5 - 3
src/sched_policies/component_sched.c

@@ -202,10 +202,12 @@ void starpu_sched_component_destroy_rec(struct starpu_sched_component * componen
 	if(component == NULL)
 	if(component == NULL)
 		return;
 		return;
 
 
-	int i;
-	if(component->nchildren > 0)
+	int i = 0;
+	while(i < component->nchildren)
 	{
 	{
-		for(i=0; i < component->nchildren; i++)
+		if (starpu_sched_component_is_worker(component->children[i]))
+			i++;
+		else
 			starpu_sched_component_destroy_rec(component->children[i]);
 			starpu_sched_component_destroy_rec(component->children[i]);
 	}
 	}