diff --git a/gns3server/compute/dynamips/nodes/router.py b/gns3server/compute/dynamips/nodes/router.py index 7b638018..7b0e4731 100644 --- a/gns3server/compute/dynamips/nodes/router.py +++ b/gns3server/compute/dynamips/nodes/router.py @@ -380,6 +380,7 @@ class Router(BaseNode): except OSError as e: log.warn("Could not delete file {}: {}".format(file, e)) continue + self.manager.release_dynamips_id(self.project.id, self.dynamips_id) @property def platform(self): diff --git a/gns3server/controller/project.py b/gns3server/controller/project.py index f4913d1b..db3b2d79 100644 --- a/gns3server/controller/project.py +++ b/gns3server/controller/project.py @@ -584,10 +584,10 @@ class Project: """ Delete the project on computes but not on controller """ - for compute in self._project_created_on_compute: + for compute in list(self._project_created_on_compute): if compute.id != "local": yield from compute.delete("/projects/{}".format(self._id)) - self._project_created_on_compute = set() + self._project_created_on_compute.remove(compute) @classmethod def _get_default_project_directory(cls):