From: Ed Bartosh Date: Fri, 16 Jun 2017 13:19:30 +0000 (+0300) Subject: wic: fix restoring of original fstab X-Git-Tag: uninative-1.7~434 X-Git-Url: https://code.ossystems.io/gitweb?a=commitdiff_plain;h=29f7735030d383f9614bdb148b52a47c79f05eea;p=openembedded-core.git wic: fix restoring of original fstab Wic updates fstab if mount points are specified in .wks. After partition images are created the original fstab is restored. However, if exception is raised when partition image being prepared wic doesn't restore original fstab. This can cause duplication of added lines in fstab when 'wic create' runs next time. Wrapping call of 'prepare' method and restoring original fstab even if exception occurs should fix this. [YOCTO #11633] Signed-off-by: Ed Bartosh Signed-off-by: Ross Burton --- diff --git a/scripts/lib/wic/plugins/imager/direct.py b/scripts/lib/wic/plugins/imager/direct.py index ad9082b2d3..aa9cc9f4e3 100644 --- a/scripts/lib/wic/plugins/imager/direct.py +++ b/scripts/lib/wic/plugins/imager/direct.py @@ -172,10 +172,11 @@ class DirectPlugin(ImagerPlugin): if rsize_bb: part.size = int(round(float(rsize_bb))) - self._image.prepare(self) - - if fstab_path: - shutil.move(fstab_path + ".orig", fstab_path) + try: + self._image.prepare(self) + finally: + if fstab_path: + shutil.move(fstab_path + ".orig", fstab_path) self._image.layout_partitions() self._image.create()