diff options
author | 2016-10-15 18:09:51 -0400 | |
---|---|---|
committer | 2016-10-15 18:09:51 -0400 | |
commit | 039cd619d51150a711b2f7861a5b138192545bff (patch) | |
tree | 65a1ebfab3fbec76baa4f725a8a0ed9c546e76e4 /src | |
parent | c58b56e0c66c9f065466520ed7ab342c39818a4d (diff) |
[Imgtool] Fixed a stupid mistake
Diffstat (limited to 'src')
-rw-r--r-- | src/tools/imgtool/iflopimg.cpp | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/src/tools/imgtool/iflopimg.cpp b/src/tools/imgtool/iflopimg.cpp index bf44774e704..4863fd130a3 100644 --- a/src/tools/imgtool/iflopimg.cpp +++ b/src/tools/imgtool/iflopimg.cpp @@ -105,7 +105,7 @@ struct imgtool_floppy_image static imgtoolerr_t imgtool_floppy_open_internal(imgtool::image *image, imgtool::stream::ptr &&stream, int noclose) { floperr_t ferr; - imgtoolerr_t err; + imgtoolerr_t err = IMGTOOLERR_SUCCESS; imgtool::stream *f = nullptr; struct imgtool_floppy_image *fimg; const imgtool_class *imgclass; @@ -126,7 +126,7 @@ static imgtoolerr_t imgtool_floppy_open_internal(imgtool::image *image, imgtool: if (ferr) { err = imgtool_floppy_error(ferr); - return err; + goto done; } f = nullptr; // the floppy object has the stream now @@ -134,10 +134,13 @@ static imgtoolerr_t imgtool_floppy_open_internal(imgtool::image *image, imgtool: { err = open(image, nullptr); if (err) - return err; + goto done; } - return IMGTOOLERR_SUCCESS; +done: + if (f) + delete f; + return err; } |