* [PATCH] wic/direct.py: Avoid exception if using multiple rawcopy/no-table entries.
@ 2017-03-09 7:25 Kristian Amlie
2017-03-09 13:28 ` Ed Bartosh
0 siblings, 1 reply; 3+ messages in thread
From: Kristian Amlie @ 2017-03-09 7:25 UTC (permalink / raw)
To: openembedded-core
If we are both having a bootloader and a U-Boot environment file, we
can end up with two entries using "--source rawcopy" and "--no-table",
and since they reuse the same file [1], their cleanup handlers will
try to delete the same file twice. So just ignore the error if the
file doesn't exist.
[1] Although they reuse the same file, the resulting output is
correct, so it appears the file is accessed in properly sequential
order.
Signed-off-by: Kristian Amlie <kristian.amlie@mender.io>
---
scripts/lib/wic/plugins/imager/direct.py | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/scripts/lib/wic/plugins/imager/direct.py b/scripts/lib/wic/plugins/imager/direct.py
index b7e324a..0e8d436 100644
--- a/scripts/lib/wic/plugins/imager/direct.py
+++ b/scripts/lib/wic/plugins/imager/direct.py
@@ -548,7 +548,10 @@ class PartitionedImage():
def cleanup(self):
# remove partition images
for image in self.partimages:
- os.remove(image)
+ try:
+ os.remove(image)
+ except FileNotFoundError:
+ pass
def assemble(self):
logger.debug("Installing partitions")
--
2.7.4
^ permalink raw reply related [flat|nested] 3+ messages in thread* Re: [PATCH] wic/direct.py: Avoid exception if using multiple rawcopy/no-table entries.
2017-03-09 7:25 [PATCH] wic/direct.py: Avoid exception if using multiple rawcopy/no-table entries Kristian Amlie
@ 2017-03-09 13:28 ` Ed Bartosh
2017-03-09 14:37 ` [PATCH v2] " Kristian Amlie
0 siblings, 1 reply; 3+ messages in thread
From: Ed Bartosh @ 2017-03-09 13:28 UTC (permalink / raw)
To: Kristian Amlie; +Cc: openembedded-core
On Thu, Mar 09, 2017 at 08:25:16AM +0100, Kristian Amlie wrote:
> If we are both having a bootloader and a U-Boot environment file, we
> can end up with two entries using "--source rawcopy" and "--no-table",
> and since they reuse the same file [1], their cleanup handlers will
> try to delete the same file twice. So just ignore the error if the
> file doesn't exist.
>
> [1] Although they reuse the same file, the resulting output is
> correct, so it appears the file is accessed in properly sequential
> order.
>
> Signed-off-by: Kristian Amlie <kristian.amlie@mender.io>
> ---
> scripts/lib/wic/plugins/imager/direct.py | 5 ++++-
> 1 file changed, 4 insertions(+), 1 deletion(-)
>
> diff --git a/scripts/lib/wic/plugins/imager/direct.py b/scripts/lib/wic/plugins/imager/direct.py
> index b7e324a..0e8d436 100644
> --- a/scripts/lib/wic/plugins/imager/direct.py
> +++ b/scripts/lib/wic/plugins/imager/direct.py
> @@ -548,7 +548,10 @@ class PartitionedImage():
> def cleanup(self):
> # remove partition images
> for image in self.partimages:
> - os.remove(image)
> + try:
> + os.remove(image)
> + except FileNotFoundError:
> + pass
>
> def assemble(self):
> logger.debug("Installing partitions")
Would it be better to just skip removing files that have already been
removed?
# remove partition images
for image in set(self.partimages):
os.remove(image)
--
Regards,
Ed
^ permalink raw reply [flat|nested] 3+ messages in thread* [PATCH v2] wic/direct.py: Avoid exception if using multiple rawcopy/no-table entries.
2017-03-09 13:28 ` Ed Bartosh
@ 2017-03-09 14:37 ` Kristian Amlie
0 siblings, 0 replies; 3+ messages in thread
From: Kristian Amlie @ 2017-03-09 14:37 UTC (permalink / raw)
To: ed.bartosh; +Cc: openembedded-core
If we are both having a bootloader and a U-Boot environment file, we
can end up with two entries using "--source rawcopy" and "--no-table",
and since they reuse the same file [1], their cleanup handlers will
try to delete the same file twice. So make sure we only do it once.
[1] Although they reuse the same file, the resulting output is
correct, so it appears the file is accessed in properly sequential
order.
Signed-off-by: Kristian Amlie <kristian.amlie@mender.io>
---
scripts/lib/wic/plugins/imager/direct.py | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/scripts/lib/wic/plugins/imager/direct.py b/scripts/lib/wic/plugins/imager/direct.py
index 481d24d..67450a2 100644
--- a/scripts/lib/wic/plugins/imager/direct.py
+++ b/scripts/lib/wic/plugins/imager/direct.py
@@ -548,7 +548,7 @@ class PartitionedImage():
def cleanup(self):
# remove partition images
- for image in self.partimages:
+ for image in set(self.partimages):
os.remove(image)
def assemble(self):
--
2.7.4
^ permalink raw reply related [flat|nested] 3+ messages in thread
end of thread, other threads:[~2017-03-09 14:37 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-03-09 7:25 [PATCH] wic/direct.py: Avoid exception if using multiple rawcopy/no-table entries Kristian Amlie
2017-03-09 13:28 ` Ed Bartosh
2017-03-09 14:37 ` [PATCH v2] " Kristian Amlie
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox