From 43afce740d5f038db522fee62d15919ad6652dfe Mon Sep 17 00:00:00 2001 From: Julien Duponchelle Date: Fri, 2 Sep 2016 11:46:08 +0200 Subject: [PATCH] Fix Error when cleaning image behind us #665 --- gns3server/controller/drawing.py | 4 +++- gns3server/controller/project.py | 5 ++++- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/gns3server/controller/drawing.py b/gns3server/controller/drawing.py index 2675ce1b..a8ef4e31 100644 --- a/gns3server/controller/drawing.py +++ b/gns3server/controller/drawing.py @@ -171,7 +171,9 @@ class Drawing: # Update node properties with additional elements svg_changed = False for prop in kwargs: - if getattr(self, prop) != kwargs[prop]: + if prop == "drawing_id": + pass # No good reason to change a drawing_id + elif getattr(self, prop) != kwargs[prop]: if prop == "svg": # To avoid spamming client with large data we don't send the svg if the SVG didn't change svg_changed = True diff --git a/gns3server/controller/project.py b/gns3server/controller/project.py index 17f5d6a0..0b98d8d4 100644 --- a/gns3server/controller/project.py +++ b/gns3server/controller/project.py @@ -512,7 +512,10 @@ class Project: try: pictures = set(os.listdir(self.pictures_directory)) for drawing in self._drawings.values(): - pictures.remove(drawing.ressource_filename) + try: + pictures.remove(drawing.ressource_filename) + except KeyError: + pass for pict in pictures: os.remove(os.path.join(self.pictures_directory, pict))